View Full Version : Structure for storing weapons
Leyder Dylan
07-27-2002, 06:07 AM
Hi,
I've a problem with my structure. I'd like to use
a structure for storing the weapons + params and
the bullet fired.
Here's my structure :
// **********************************************
typedef struct
{
char Name[25];
float x, y, z;
int Speed, Power;
} WEAPON_CONFIG;
// **********************************************
typedef struct
{
int Number_Weapon;
WEAPON_CONFIG* Bullet;
} WEAPON;
For using the structure, I initialise it with :
WEAPON Weapon_Use;
And in my program, I use the structure like this :
Weapon_Use.Bullet[i].Name[0] = ...
Weapon_Use.Bullet[i].Power = ...
etc ...
In fact, I'd like to use a structure like this :
Weapon_Use[0].Bullet[0].Power = ...
The "Weapon_Use[]" variable will be used for storing each weapon
(Desert Eagle, Magnum, ...)
And the "...Bullet[]" variable will be used for each bullet fired.
How can I adapt this structure :
Weapon_Use.Bullet[0].Power
In this :
Weapon_Use[0].Bullet[0].Power
Thanks in advance ...
Leyder Dylan
07-27-2002, 08:27 AM
I've made a mistake, here's the new structure :
// **********************************************
typedef struct
{
char Name[25];
float x, y, z;
int Speed, Power;
} WEAPON_CONFIG;
// **********************************************
typedef struct
{
int Number_Weapon;
WEAPON_CONFIG* Weapon;
} WEAPON;
How can I adapt this structure :
Weapon_Use.Weapon[0].Power
In this :
Weapon_Use[0].Weapon[0].Bullet[0].Power
Thanks.
Gavin
07-28-2002, 12:38 PM
I must admit I haven;t read all of your post. But you wangt an array if structs where each struct has an array of structs in it, like a 2d array. If so you malloc the first struct and then loop through each of that array and malloc the second struct.
jubei_GL
07-28-2002, 05:19 PM
typedef struct
{
int x,y,z;
}gun;
typedef strucct
{
int x,y,z;
gun GUN[10];
}hand;
main()
{
hand HAND[10];
HAND[0].GUN[0].x=whatever.....
You get the idea...
Leyder Dylan
07-30-2002, 11:52 AM
Thanks a lot, I'm gonna try this.
nexusone
07-31-2002, 05:48 AM
I sort of have a diffent approach and things to think about.
First once the bullet, laser pulse, etc. has left the gun, it should become it own object.
// Define ammo
typedef struct
{
int player; // who fired it!
int type; // 0 = hand, 1 = bullett, etc.
int range;
int speed;
// start_position
int c_x, c_y, c_z;
// direction vector
int v_x, v_y, v_z;
// current_position
int c_x, c_y, c_z; once the distance between start and current exceed range kill object.
}
// Define weapon
typedef struct
{
int type; Type of weapon
int damage;
int firing_rate; How fast can it shoot, hand gun vs. machine gun
int speed; bullett vs. laser
int range; hand vs. bullett
int picked_up; Does the player have the gun.
int ammo; current ammo supply
int ammo_max; max ammount he can carry.
}Weapon;
// Define player
typedef struct
{
char name[30];
weapon Weapon[8]; // Max weapons in game are 8 but could be what ever number
int score;
int healt;
int gun_selected;
}Player;
static struct Player player[8];
example:
shoot()
{
if (player[0].weapon[player[0].gun_selected].ammo > 0) // Check to see if any ammo left to shoot
{
spawn_shot(player[0].weapon[player[0].gun_selected])
player[0].weapon[player[0].gun_selected].ammo--; take away ammo.
}
I hope this helps.
Originally posted by Leyder Dylan:
Hi,
I've a problem with my structure. I'd like to use
a structure for storing the weapons + params and
the bullet fired.
Here's my structure :
// **********************************************
typedef struct
{
char Name[25];
float x, y, z;
int Speed, Power;
} WEAPON_CONFIG;
// **********************************************
typedef struct
{
int Number_Weapon;
WEAPON_CONFIG* Bullet;
} WEAPON;
For using the structure, I initialise it with :
WEAPON Weapon_Use;
And in my program, I use the structure like this :
Weapon_Use.Bullet[i].Name[0] = ...
Weapon_Use.Bullet[i].Power = ...
etc ...
In fact, I'd like to use a structure like this :
Weapon_Use[0].Bullet[0].Power = ...
The "Weapon_Use[]" variable will be used for storing each weapon
(Desert Eagle, Magnum, ...)
And the "...Bullet[]" variable will be used for each bullet fired.
How can I adapt this structure :
Weapon_Use.Bullet[0].Power
In this :
Weapon_Use[0].Bullet[0].Power
Thanks in advance ...
Powered by vBulletin® Version 4.2.0 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.