User Tag List

Page 2 of 2 FirstFirst 1 2
Results 11 to 12 of 12

Thread: Scripted LWeapon items #1

  1. #11
    The Time-Loop Continues ZC Developer
    Gleeok's Avatar
    Join Date
    Apr 2007
    Posts
    4,826
    Mentioned
    259 Post(s)
    Tagged
    10 Thread(s)
    vBActivity - Stats
    Points
    12,958
    Level
    33
    vBActivity - Bars
    Lv. Percent
    26.12%

    Re: Scripted LWeapon items #1

    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;
    			}
    		}
    	}
    }
    This post contains the official Gleeok seal of approval. Look for these and other posts in an area near you.

  2. #12
    Octorok sps999's Avatar
    Join Date
    Feb 2007
    Age
    28
    Posts
    148
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    vBActivity - Stats
    Points
    1,084
    Level
    11
    vBActivity - Bars
    Lv. Percent
    33.59%

    Re: Scripted LWeapon items #1

    Yeah, a spread shot would be cool.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
About us
Armageddon Games is a game development group founded in 1997. We are extremely passionate about our work and our inspirations are mostly drawn from games of the 8-bit and 16-bit era.
Social