src/Weapons.cc
author terom
Sun, 07 Dec 2008 21:10:04 +0000
changeset 263 8c999cf4c182
parent 258 833ad8d7db8b
child 271 bf6784a95b08
permissions -rw-r--r--
weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
236
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
     1
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
     2
#include "Weapons.hh"
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
     3
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
     4
static struct WeaponParams {
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
     5
    TickCount age;
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
     6
    float speed;
253
747b1037d83e Added recoil to weapon constructor. Recoil still not used.
saiam
parents: 237
diff changeset
     7
    float recoil;
236
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
     8
    float explosionRadius;
263
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
     9
    float radius;
236
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    10
    TickCount reloadTime;
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    11
    std::string name;
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    12
} WEAPON_PARAMS[] = {
263
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
    13
    /*  age     speed        recoil         expRadius   radius  reloadTime      name        */
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
    14
    {   10000,  5 * 80 + 50, 0 * 5 + 4000,  0 * 6 + 5,  1,      0 * 100 + 50,   "Weapon 1"  },
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
    15
    {   10000,  4 * 80 + 50, 2 * 5 + 5,     1 * 6 + 5,  2,      1 * 100 + 50,   "Weapon 2"  },
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
    16
    {   10000,  3 * 80 + 50, 3 * 5 + 5,     2 * 6 + 5,  3,      2 * 100 + 50,   "Weapon 3"  },
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
    17
    {   10000,  2 * 80 + 50, 4 * 5 + 5,     3 * 6 + 5,  4,      3 * 100 + 50,   "Weapon 4"  },
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
    18
    {   10000,  1 * 80 + 50, 5 * 5 + 5,     4 * 6 + 5,  5,      4 * 100 + 50,   "Weapon 5"  },
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
    19
    {   0,      0,           0,             0,          0,      0,              ""          }
236
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    20
};
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    21
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    22
std::vector<Weapon*> buildWeaponsList (void) {
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    23
    std::vector<Weapon*> weapons;
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    24
253
747b1037d83e Added recoil to weapon constructor. Recoil still not used.
saiam
parents: 237
diff changeset
    25
    for (WeaponParams *wp = WEAPON_PARAMS; 
263
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
    26
         wp->age || wp->speed || wp->recoil || wp->explosionRadius || wp->radius || wp->reloadTime; 
253
747b1037d83e Added recoil to weapon constructor. Recoil still not used.
saiam
parents: 237
diff changeset
    27
         wp++) {
263
8c999cf4c182 weapon projectile radiuses and fix network play (local_player == NULL, Rope releasing upon being hit
terom
parents: 258
diff changeset
    28
        weapons.push_back(new Weapon(wp->age, wp->speed, wp->recoil, wp->explosionRadius, wp->radius, wp->reloadTime, wp->name));
236
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    29
    }
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    30
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    31
    return weapons;
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    32
}
0048ba274152 move weapons definition out to Weapons.cc
terom
parents:
diff changeset
    33