// NPC made by Arcainne if (playerenters) { show; hideimg 0; hideimg 1; hideimg 2; hideimg 3; hideimg 4; timeout = 0; } if (playertouchsme) { toweapons Zalcannon; } function weaponFiredStart() { play freeze.wav; showimg 0, zalcannon.png, this.cannonX, this.cannonY; freezeplayer .05; this.telex2=playerx+1.3; this.teley2=playery-random(0,1.5); this.telex3=playerx+2.1; this.teley3=playery-random(1,2.5); playersprite = 19; timeout = .05; } if (weaponfired) { this.cannonX = playerx; this.cannonY = playery; this.orbx = playerx; this.orby = playery; this.phearts = playerhearts; this.px = playerx; this.py = playery; setarray teleXPos, 3; setarray teleYPos, 3; this.power = 10; if (playerdir==0) { this.cannonX += 0.8; this.cannonY -= 0.5; this.orbx += 0.8; this.orby -= 3; teleXPos[0] = playerx + 0.5; teleYPos[0] = playery - random(1, 2.5); weaponFiredStart(); changeimgpart 0,32,0,32,32; changeimgvis 0,0; timeout = .05; } if (playerdir==1) { play freeze.wav; showimg 0,zalcannon.png,playerx-.7,playery+1; changeimgpart 0,0,32,32,32; changeimgvis 0,0; freezeplayer .05; this.orbx=playerx-3; this.orby=playery+.5; this.telex1=playerx-random(1,2.5); this.teley1=playery+.2; this.telex2=playerx-random(0,1.5); this.teley2=playery+1; this.telex3=playerx-random(1,2.5); this.teley3=playery+1.8; playersprite = 19; timeout = .05; } if (playerdir==2) { play freeze.wav; showimg 0,zalcannon.png,playerx+.5,playery+1.7; changeimgpart 0,0,0,32,32; changeimgvis 0,2; freezeplayer .05; this.orbx=playerx+.5; this.orby=playery+4; this.telex1=playerx+.2; this.teley1=playery+random(2,3.5); this.telex2=playerx+1; this.teley2=playery+random(1,2.5); this.telex3=playerx+1.8; this.teley3=playery+random(2,3.5); playersprite = 19; timeout = .05; } if (playerdir==3) { play freeze.wav; showimg 0,zalcannon.png,playerx+2,playery+1; changeimgpart 0,32,32,32,32; changeimgvis 0,0; freezeplayer .05; this.orbx=playerx+4; this.orby=playery+.5; this.telex1=playerx+random(2,3.5); this.teley1=playery+.2; this.telex2=playerx+random(1,2.5); this.teley2=playery+1; this.telex3=playerx+random(1,2.5); this.teley3=playery+1.8; playersprite = 19; timeout = .05; } } if (timeout) { showimg 1,crystalflash.mng,teleXPos[0],teleYPos[0]; showimg 2,crystalflash.mng,this.telex2,this.teley2; showimg 3,crystalflash.mng,this.telex3,this.teley3; showimg 4,orb6.gif,this.orbx,this.orby; if (playerdir==0) { showimg 0,zalcannon.png,this.cannonX,this.cannonY; changeimgpart 0,32,0,32,32; changeimgvis 4,0; teleYPos[0] -= random(.5,1); this.teley2-=random(1,1.3); this.teley3-=random(.4,.9); this.orby -= 1.5; freezeplayer .05; if (teleYPos[0]>this.orby+5) { teleYPos[0]=this.orby+.5; } if (this.teley2>this.orby+6.5) { this.teley2=this.orby+1.5; } if (this.teley3>this.orby+5) { this.teley3=this.orby+.5; } } if (playerdir==1) { showimg 0,zalcannon.png,playerx-.7,playery+1; changeimgpart 0,0,32,32,32; changeimgvis 4,1; this.orbx-=1.5; this.telex1-=random(.5,1); this.telex2-=random(1,1.3); this.telex3-=random(.4,.9); freezeplayer .05; if (this.telex1>this.orbx+5) { this.telex1=this.orbx+.5; } if (this.telex2>this.orbx+6.5) { this.telex2=this.orbx+1.5; } if (this.telex3>this.orbx+5) { this.telex3=this.orbx+.5; } } if (playerdir==2) { showimg 0,zalcannon.png,playerx+.5,playery+1.7; changeimgpart 0,0,0,32,32; changeimgvis 4,2; this.orby+=1.5; this.teley1+=random(.5,1); this.teley2+=random(1,1.3); this.teley3+=random(.4,.9); freezeplayer .05; if (this.teley1playery+30 || this.orbxplayerx+30) { timeout = 0; freezeplayer .1; hideimg 0; hideimg 1; hideimg 2; hideimg 3; hideimg 4; }