Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ///LOGICA DI PICKUP - NEW VERSION FIEROH
- var wm, hm, cur_id, cur_ammo, place_weapon; //variabili d'appoggio
- wm = sprite_get_width(mask_index);
- hm = sprite_get_height(mask_index);
- place_weapon = collision_rectangle(x -wm/2, y, x +wm, y +hm, obj_Weapon, false, false);
- var weaponQ = 3, weaponInfoQ = 4; //quantità delle armi e quantità delle informazioni per ogni arma. Info: nome(0), oggetto_arma(1), oggetto_braccio(2), può_ruotare_il_braccio?(3).
- grid_weapon = ds_grid_create(weaponQ,weaponInfoQ);
- sz_GridSetRow(grid_weapon,0,'',noone,noone,false);
- sz_GridSetRow(grid_weapon,1,'pistol',obj_Pistol,obj_BraccioZebPistol,true);
- sz_GridSetRow(grid_weapon,2,'shotgun',obj_Shotgun,obj_BraccioZebShotgun,false);
- sz_GridSetRow(grid_weapon,3,'tommygun',obj_TommyGun,obj_BraccioZebTommyGun,false);
- if (can_pickup && pickupkey)
- {
- if(place_weapon != noone && place_weapon.ammo > 0)
- {
- cur_id = place_weapon.id;
- cur_ammo = cur_id.ammo;
- old_wielding = is_Wielding;
- with(grid_weapon[# 2,sz_GridFindColumn(grid_weapon,0,is_Wielding)]) instance_destroy(); //distruggo il braccio di zeb con la vecchia arma
- is_Wielding = grid_weapon[# 0,sz_GridFindColumn(grid_weapon,1,cur_id.object_index)];
- wielding_dh = !grid_weapon[# sz_GridFindColumn(grid_weapon,0,is_Wielding),3]
- with(cur_id) instance_destroy();
- instance_create(x, y, grid_weapon[# 2,sz_GridFindColumn(grid_weapon,0,is_Wielding)]); //creo il nuovo braccio con l'arma raccolta da terra
- if(old_wielding != '')
- {
- ii = instance_create(x, y, grid_weapon[# 1,sz_GridFindColumn(grid_weapon,0,old_wielding)]); //droppo a terra l'arma che avevo in mano e salvo l'id
- ii.ammo = ammo; //assegno le munizioni che avevo in mano all'arma ora a terra
- }
- ammo = cur_ammo; //assegno a zeb le munizioni salvate in precedenza
- }
- else //se non sono vicino a qualche arma
- {
- with(grid_weapon[# 2,sz_GridFindColumn(grid_weapon,0,is_Wielding)]) instance_destroy();
- if(is_Wielding != '')
- {
- ii = instance_create(x, y, grid_weapon[# 1,sz_GridFindColumn(grid_weapon,0,is_Wielding)]);
- ii.ammo = ammo;
- is_Wielding = '';
- }
- ammo = 0;
- }
- }
- ds_grid_destroy(grid_weapon);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement