View difference between Paste ID: uxU5BDGY and f62RPJYz
SHOW: | | - or go back to the newest paste.
1
var list, col, ins, hit;
2
3
hit=false
4
list=ds_list_create();//create list
5
col=instance_place_list(x,y,all,list,true);//list all collissions
6
7
8
for(i = 0; i<col; i+=1){
9
	ins = ds_list_find_value(list,i);
10
	
11
	if(variable_instance_exists(ins,"game_health") and ins != id){//check if instance has health
12
		if(variable_instance_exists(ins,"game_shield")){//check if instance has shield
13
			if(ins.game_shield>argument0){//check if shield is above 0
14
				ins.game_shield-=argument0//damage shield
15
				hit=true
16
			}else{//if shield = 0 or below
17
				ins.game_health-=argument0//damage health
18
				hit=true
19
			}
20
		}else{
21
			ins.game_health-=argument0//if no shield, damage health
22
			hit=true
23
		}
24
	}
25
}
26
27
ds_list_destroy(list)//destroy list
28
29
return(hit)//return if an instance has been "damaged"