Oopsie. fixed.

Also the wand magic was strewn together with no design at all really, and turned out kinda dumb as a result....I should fix that but what should it do? Spread shot like contra maybe?
Code:
int fire3;
int wand2;



global script global_2{

	void run(){

		int attack_delay;

		while(true){

			Waitframe();

			int lx = Link->X; int ly = Link->Y;

			if(attack_delay>0)attack_delay--;
			if(Link->InputB && fire3>0){

				if(attack_delay==0){
					attack_delay = 6;

					lweapon laser = Screen->CreateLWeapon(LW_FIRE);
					
					if(Link->Dir==0){laser->Dir=0;laser->X=lx;laser->Y=ly-16;}
					else if(Link->Dir==1){laser->Dir=1;laser->X=lx;laser->Y=ly+16;}
					else if(Link->Dir==2){laser->Dir=2;laser->X=lx-16;laser->Y=ly;}
					else{ laser->Dir=3;laser->X=lx+16;laser->Y=ly;}
					laser->Step=200;
					laser->Damage=2;
					laser->CSet=8;
					Game->PlaySound(13);
				}
			}
			else fire3=0;
		}
	}
}

item script flamethrower_item{
	void run(){
		fire3=3;
	}
}


item script wand_lv2{
	void run(int tile){

		int d = 2; // damage
		int c = 7; // cset
		int s = 300; // speed

		int t = Link->Dir;

		int lx = Link->X; int ly = Link->Y;

		if(wand2>=0){
		lweapon laser = Screen->CreateLWeapon(LW_MAGIC);
					
		if(Link->Dir==0){laser->Dir=0;laser->X=lx;laser->Y=ly-16;}
		else if(Link->Dir==1){laser->Dir=1;laser->X=lx;laser->Y=ly+16;}
		else if(Link->Dir==2){laser->Dir=2;laser->X=lx-16;laser->Y=ly;}
		else{ laser->Dir=3;laser->X=lx+16;laser->Y=ly;}
		laser->Step=s;laser->Tile=tile+t;
		laser->Damage=d;
		laser->CSet=c;
		Game->PlaySound(32);
		}
		if(wand2>=0){
		lweapon laser = Screen->CreateLWeapon(LW_MAGIC);
					
		if(Link->Dir==0){laser->Dir=0;laser->X=lx+8;laser->Y=ly-16;}
		else if(Link->Dir==1){laser->Dir=1;laser->X=lx+8;laser->Y=ly+16;}
		else if(Link->Dir==2){laser->Dir=2;laser->X=lx-16;laser->Y=ly+8;}
		else{ laser->Dir=3;laser->X=lx+16;laser->Y=ly+8;}
		laser->Step=s;laser->Tile=tile+t;
		laser->Damage=d;
		laser->CSet=c;
		Game->PlaySound(32);
		}
		if(wand2>=0){
		lweapon laser = Screen->CreateLWeapon(LW_MAGIC);
					
		if(Link->Dir==0){laser->Dir=0;laser->X=lx-8;laser->Y=ly-16;}
		else if(Link->Dir==1){laser->Dir=1;laser->X=lx-8;laser->Y=ly+16;}
		else if(Link->Dir==2){laser->Dir=2;laser->X=lx-16;laser->Y=ly-8;}
		else{ laser->Dir=3;laser->X=lx+16;laser->Y=ly-8;}
		laser->Step=s;laser->Tile=tile+t;
		laser->Damage=d;
		laser->CSet=c;
		Game->PlaySound(32);
		}
		if(wand2>=0){
		lweapon laser = Screen->CreateLWeapon(LW_MAGIC);
					
		if(Link->Dir==0){laser->Dir=1;laser->X=lx;laser->Y=ly+16;laser->Tile=tile+1;}
		else if(Link->Dir==1){laser->Dir=0;laser->X=lx+8;laser->Y=ly-16;laser->Tile=tile;}
		else if(Link->Dir==2){laser->Dir=3;laser->X=lx+16;laser->Y=ly;laser->Tile=tile+3;}
		else{ laser->Dir=2;laser->X=lx-16;laser->Y=ly;laser->Tile=tile+2;}
		laser->Step=s;
		laser->Damage=d;
		laser->CSet=c;
		Game->PlaySound(32);
		}
	}
}


item script boomerang_multi{
	void run(){

	int s = 300; // b_rang speed
	int c = 11;

		lweapon fire1 = Screen->CreateLWeapon(LW_BRANG);
		fire1->Step=s;
		fire1->Damage=0;
		fire1->CSet=c; // cset
		Game->PlaySound(4);


		if(Link->InputLeft && Link->InputUp){
			fire1->X = Link->X - 16; 
			fire1->Y = Link->Y - 16;
			fire1->Dir=4;
		}
		else if(Link->InputRight && Link->InputUp){
			fire1->X = Link->X + 16; 
			fire1->Y = Link->Y - 16;
			fire1->Dir=5;
		}
		else if(Link->InputLeft && Link->InputDown){
			fire1->X = Link->X - 16; 
			fire1->Y = Link->Y + 16;
			fire1->Dir=6;
		}
		else if(Link->InputRight && Link->InputDown){
			fire1->X = Link->X + 16; 
			fire1->Y = Link->Y + 16;
			fire1->Dir=7;
		}
		else{
			if(Link->Dir == 0) {
				fire1->X = Link->X; 
				fire1->Y = Link->Y - 16;
				fire1->Dir=0;
			}
			if(Link->Dir == 1) {
				fire1->X = Link->X; 
				fire1->Y = Link->Y + 16;
				fire1->Dir=1;
			}
			if(Link->Dir == 2) {
				fire1->X = Link->X - 16; 
				fire1->Y = Link->Y;
				fire1->Dir=2;
			}
			if(Link->Dir == 3) {
				fire1->X = Link->X + 16; 
				fire1->Y = Link->Y;
				fire1->Dir=3;
			}
		}
	}
}