0,]']>S}Wup8d%qy)6o;]AsVl3?77777777777777=77777GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWggggggijkgggggggggijkggggggggg  777777777777<77779:;7777777777GGGGGGGGGLGGGGGGGGGGGGNOGGGGMGWZ[WWWWYZ[WWWWWWWWWWWWWWWWWWWWgggggggggggggggggggggggggggggg 77<777777777777777777777777>?7GGGGGGGGGGGGGIJKGGGGGGGGGGGGGGWWWWWWWWWWWWWWWW^_WWWWZ[WWWWWWggggggggggggglmggggggggggggggg 77777777777777>?7777>?77777777GGGIJKGGGGGGGGGGGGGGGGGGGGGLGGWWWWWWWWWWWW]WWWWWWWWWWWWWWWWWgggglggggggggggggggggggggglmgg77777779:;77777777777777<77777GGGGGGGGGGGGGGGGGGGGLGGGGGGGGGWWWWWWWWWWWWWWWWWWWWWWWWWWYZ[Wgggggggglggggggggggggijkgggggg777777777777777777777777777777GGGGGGGGNOGGGGGMGGGGGGGGGGGGGGWWWWWW^_WWWWWWWWWWWWWWWWWWWWWWgggggggggggggijkggggggggggggno  7777777777777777:;777777777777GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGWWWWWWWWWWWWWWW]WWWWWWWWWWWWWWgggggggggggggggggggggggggggggg  77777777777<777777777777777:;7GGGGGGGGGGGGGGGGGGGGGGGIJKGGGLWWWWWWWWWW]WWWWWWWWWWW]WWWWW^_gggijkgggggggggggggggggggijkgg 7:;777777777777777777>?7777777GGLGGGGMGGGGLGGGGNOGGGGGGGGGGG^_WWWWWWWWWWWWWWWWWWWWWWWWWWWWgggggggggggggggggglggggggggggg777777777777777777777777777777GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWgggggggggggggggggggggggggggggg 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@           000000000000000000000000000000WWWWWWWWWWWWWWWWWWWWWWWWWWWWWW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F GGFEEDDDDDDDDDDEEFGIJJKKKLMMOOmllkkj i h fe d c b aaa````a a bc c dijoo       x_ZVRPPPPQRTVX\_XTQPPPPPQRST\^_ ```````````` `` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `````````````````````````````````````````````````!A!A!A  ! A A ! !!AA  ! ! A! !!!  !A!A !A!A !A ! A ! A !A! A !A ! A!AA B B B B C BD A D C C B C B C Dh=̻̼̼̼̼̼̼̼̼̼̻̻̻̻̼̼̼̼̻̼̼̻̻̻̻̻̼̻̼̼̻ ̼ ̼̼̼ ̻̻̼̼̻̼̻̻̻̼̼ ̼ ̻ ̼ ̼ ̻̻̼̼̼̼̻̻̻ ̼̻̼̻̻̼̼̼̼̻̻̼̼̼̻̻̻̼̼̼̻DO̼DO̻DO̻DDDDDDDDDDDDDDDDD@ODD@D̼DD@D̻ DD@D̼ ODDDD@D̼O",@D̻ Db" DDODD,b""&LDDOD$,bUU&"DDDD$"bff&"DDDD,UeVUDDDD$"eVP"DDDD$"eVP"BDDDD"UeVULDDfefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefeefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeVefeV333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333433343334333433343334333433343334333433343334333433343334333433343334333433343334333433343334333433343334333433343334333334333433343334333433343334333433343334333433343334333433343334333433343334333433343334333433343334333433343334333433343C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C3C33333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C33333433343334333433343334333433343334333433343334333433343334333433343334333433343334333433343334333433343334333433343334C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333C333333333333333333333333333333133133133133133133133133133133133133133133133133133133133133133133133133133133133133133133333333333333333333333333333333131313131313131313131313131313131313131313131313131313131313333333333333333333333333333333333333333333333333333333333333131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313 4-- title: Earth_change -- author: OdiStudio Games -- desc: survive on The Earth changin -- script: lua t=0 x=86 y=24 ov=0 function zero() cls() zero=menu end function menu() if btnp(0) then y=y-10 end if btnp(1) then y=y+10 end if y <= 24 then y = 24 elseif y >= 44 then y = 44 end if y == 24 and btnp(5) then zero=start end if y == 34 and btnp(5) then zero=about end if y == 44 and btnp(5) then zero=exitt end cls(13) map(0,17) print(">",x,y) print("Start",96,24,0) print("About",96,34,0) print("Exit",96,44,0) print("select x",86,84,0) print("Earth-change",40,0,15,0,2) end -- player player={} p=0 die=0 tdie=0 function addPlayer(x,y) local p={} p.x=x p.y=y p.vx=0 p.vy=0 p.flip=0 p.ev=0 p.sp=256 p.eat=0 p.c=8 p.r=4 p.v=1 p.t=0 table.insert(player,p) end function ticPlayer() for k,p in pairs(player) do p.t=p.t+1 p.eat=0 p.y=p.y+p.vy p.x=p.x+p.vx -- limite if p.x>=226 then p.x=226 elseif p.x<-2 then p.x=-2 end -- No evolve -- comportement if p.y>=80 and p.ev==0 then p.y=80 p.vx=0 spr(p.sp+p.t%60//30*2,p.x,p.y,7,1,p.flip,0,2,2) if btnp(3) then p.vx=3 p.vy=-3 p.flip=0 end if btnp(2) then p.vx=-3 p.vy=-3 p.flip=1 end else p.vy=p.vy+0.32 spr(260,p.x,p.y,7,1,p.flip,0,2,2) p.eat=1 end -- first evolve -- remove player -- lion for v,l in pairs(li) do if p.x<=l.x+2 and p.x>=l.x-11 and p.y<=l.y+4 and p.y>=l.y-11 and p.eat==0 then sfx(2,"E-2") table.remove(player,k) die=1 for i=1,10 do addPpc(p.x,p.y,9) addPpc(p.x,p.y,8) end end end -- zombie for v,z in pairs(zb) do if p.x<=z.x+9 and p.x>=z.x-11 and p.y<=z.y+4 and p.y>=z.y-11 and p.eat==0 then sfx(2,"E-2") table.remove(player,k) die=1 for i=1,10 do addPpc(p.x,p.y,9) addPpc(p.x,p.y,8) end end end -- vampire for j,v in pairs(vp) do if p.x<=v.x+9 and p.x>=v.x-11 and p.y<=v.y+4 and p.y>=v.y-11 and p.eat==0 then sfx(2,"E-2") table.remove(player,k) die=1 for i=1,10 do addPpc(p.x,p.y,9) addPpc(p.x,p.y,8) end end end -- ghost for v,g in pairs(gh) do if p.x<=g.x+2 and p.x>=g.x-11 and p.y<=g.y+4 and p.y>=g.y-11 then sfx(2,"E-2") table.remove(player,k) die=1 for i=1,10 do addPpc(p.x,p.y,9) addPpc(p.x,p.y,8) end end end -- burn head for v,b in pairs(bh) do if p.x<=b.x+2 and p.x>=b.x-11 and p.y<=b.y+4 and p.y>=b.y-11 then sfx(2,"E-2") table.remove(player,k) die=1 for i=1,10 do addPpc(p.x,p.y,9) addPpc(p.x,p.y,8) end end end -- bird for v,bb in pairs(br) do if p.x<=bb.x+2 and p.x>=bb.x-11 and p.y<=bb.y+4 and p.y>=bb.y-11 then sfx(2,"E-2") table.remove(player,k) die=1 for i=1,10 do addPpc(p.x,p.y,9) addPpc(p.x,p.y,8) end end end -- remove ennemies -- remove chenille for v,c in pairs(ch) do if p.x<=c.x+2 and p.x>=c.x-11 and p.y<=c.y+4 and p.y>=c.y-11 and p.eat==1 then sfx(3,"E-1") table.remove(ch,v) for i=1,10 do addPpc(c.x,c.y,5) addPpc(c.x,c.y,6) end end end -- remove lion for v,l in pairs(li) do if p.x<=l.x+2 and p.x>=l.x-11 and p.y<=l.y+4 and p.y>=l.y-11 and p.eat==1 then sfx(3,"E-1") table.remove(li,v) for i=1,10 do addPpc(l.x,l.y,4) addPpc(l.x,l.y,2) end end end -- remove zombie for v,z in pairs(zb) do if p.x<=z.x+2 and p.x>=z.x-11 and p.y<=z.y+4 and p.y>=z.y-11 and p.eat==1 then sfx(3,"E-1") table.remove(zb,v) for i=1,10 do addPpc(z.x,z.y,5) addPpc(z.x,z.y,6) addPpc(z.x,z.y,2) end end end -- remove vampire for j,v in pairs(vp) do if p.x<=v.x+2 and p.x>=v.x-11 and p.y<=v.y+4 and p.y>=v.y-11 and p.eat==1 then sfx(3,"E-1") table.remove(vp,j) for i=1,10 do addPpc(v.x,v.y,8) addPpc(v.x,v.y,9) addPpc(v.x,v.y,13) end end end -- remove bat for v,b in pairs(bat) do if p.x<=b.x+1 and p.x>=b.x-11 and p.y<=b.y+4 and p.y>=b.y-11 and p.eat==1 then sfx(3,"E-1") table.remove(bat,v) for i=1,10 do addPpc(b.x,b.y,2) addPpc(b.x,b.y,14) addPpc(b.x,b.y,15) end end end end end -- explode player or ennemies ppc={} function addPpc(x,y,c) pp={} pp.x=x pp.y=y pp.c=c pp.t=0 pp.dx=math.random(-70,70)//30 pp.dy=math.random(-70,70)//30 table.insert(ppc,pp) end function ticPpc() for k,pp in pairs(ppc) do pp.x=pp.x+pp.dx pp.y=pp.y+pp.dy pp.t=pp.t+1 circb(pp.x,pp.y+5,1,pp.c) if pp.t>20 then table.remove(ppc,k) end end end -- Chenille ch={} function addCh(y) local c={} c.x=0 c.y=y c.vx=0.92 c.vy=0 c.d=math.random(2) c.dd=0 c.flip=1 c.t=0 c.tt=0 table.insert(ch,c) end function ticCh() for k,c in pairs(ch) do -- Place chenille c.x=c.x+c.vx c.t=c.t+1 c.tt=c.tt+1 c.y=c.y+c.vy if c.d==1 then c.vx=1 elseif c.d==2 then c.vx=-1 c.flip=0 end if c.dd==0 and c.d==1 then c.x=-10 c.dd=1 elseif c.dd==0 and c.d==2 then c.x=240 c.dd=1 end -- draw chenille spr(288+c.t%60//30*2,c.x,c.y,7,1,c.flip,0,2,2) -- comportement if c.y>=80 then c.y=80 else c.vy=0.92 end -- remove chenille if c.tt>=300 then table.remove(ch,k) end end end -- lion li={} function addLi(y) local l={} l.x=0 l.y=y l.vx=1 l.vy=0 l.d=math.random(2) l.dd=0 l.flip=1 l.t=0 l.tt=0 table.insert(li,l) end function ticLi() for k,l in pairs(li) do -- Place lion l.x=l.x+l.vx l.t=l.t+1 l.tt=l.tt+1 l.y=l.y+l.vy if l.d==1 then l.vx=1 elseif l.d==2 then l.vx=-1 l.flip=0 end if l.dd==0 and l.d==1 then l.x=-10 l.dd=1 elseif l.dd==0 and l.d==2 then l.x=240 l.dd=1 end -- draw lion spr(320+l.t%60//30*2,l.x,l.y,7,1,l.flip,0,2,2) -- comportement if l.y>=80 then l.y=80 else l.vy=0.92 end -- remove lion if l.tt>=300 then table.remove(li,k) end end end -- bat bat={} function addBat(y) local b={} b.x=0 b.y=y b.vx=0.92 b.vy=0 b.d=math.random(2) b.dd=0 b.flip=1 b.t=0 b.tt=0 table.insert(bat,b) end function ticBat() for k,b in pairs(bat) do -- Place bat b.x=b.x+b.vx b.t=b.t+1 b.tt=b.tt+1 b.y=b.y+b.vy if b.d==1 then b.vx=1 elseif b.d==2 then b.vx=-1 b.flip=0 end if b.dd==0 and b.d==1 then b.x=-10 b.dd=1 elseif b.dd==0 and b.d==2 then b.x=240 b.dd=1 end -- draw bat spr(352+b.t%30//20*1,b.x,b.y,7,2,b.flip) -- comportement if b.y>=65 then b.y=65 else b.vy=0.92 end -- remove bat if b.tt>=300 then table.remove(bat,k) end end end -- Ghost gh={} function addGh(y) local g={} g.x=0 g.y=y g.vx=1 g.vy=0 g.d=math.random(2) g.dd=0 g.flip=1 g.t=0 g.tt=0 table.insert(gh,g) end function ticGh() for k,g in pairs(gh) do -- Place Ghost g.x=g.x+g.vx g.t=g.t+1 g.tt=g.tt+1 g.y=g.y+g.vy if g.d==1 then g.vx=1 elseif g.d==2 then g.vx=-1 g.flip=0 end if g.dd==0 and g.d==1 then g.x=-10 g.dd=1 elseif g.dd==0 and g.d==2 then g.x=240 g.dd=1 end -- draw Ghost spr(384+g.t%60//30*2,g.x,g.y,7,1,g.flip,0,2,2) -- comportement if g.y>=80 then g.y=80 else g.vy=0.92 end -- remove Ghost if g.tt>=300 then table.remove(gh,k) end end end -- Burn head bh={} function addBh(y) local b={} b.x=0 b.y=y b.vx=1 b.vy=0 b.d=math.random(2) b.dd=0 b.flip=1 b.t=0 b.tt=0 table.insert(bh,b) end function ticBh() for k,b in pairs(bh) do -- Place Burn head b.x=b.x+b.vx b.t=b.t+1 b.tt=b.tt+1 b.y=b.y+b.vy if b.d==1 then b.vx=1 elseif b.d==2 then b.vx=-1 b.flip=0 end if b.dd==0 and b.d==1 then b.x=-10 b.dd=1 elseif b.dd==0 and b.d==2 then b.x=240 b.dd=1 end -- draw Burn head spr(416+b.t%60//30*2,b.x,b.y,7,1,b.flip,0,2,2) -- comportement if b.y>=68 then b.y=68 else b.vy=0.92 end -- remove burn head if b.tt>=300 then table.remove(bh,k) end end end -- bird br={} function addBr(y) local bb={} bb.x=0 bb.y=y bb.vx=1 bb.vy=0 bb.d=math.random(2) bb.dd=0 bb.flip=1 bb.t=0 bb.tt=0 table.insert(br,bb) end function ticBr() for k,bb in pairs(br) do -- Place Burn head bb.x=bb.x+bb.vx bb.t=bb.t+1 bb.tt=bb.tt+1 bb.y=bb.y+bb.vy if bb.d==1 then bb.vx=1 elseif bb.d==2 then bb.vx=-1 bb.flip=0 end if bb.dd==0 and bb.d==1 then bb.x=-10 bb.dd=1 elseif bb.dd==0 and bb.d==2 then bb.x=240 bb.dd=1 end -- draw Bird spr(448+bb.t%60//30*2,bb.x,bb.y,7,1,bb.flip,0,2,2) -- comportement if bb.y>=68 then bb.y=68 else bb.vy=0.92 end -- remove bird if bb.tt>=300 then table.remove(br,k) end end end -- zombie zb={} function addZb(y) local z={} z.x=0 z.y=y z.vx=1 z.vy=0 z.d=math.random(2) z.dd=0 z.flip=1 z.t=0 z.tt=0 table.insert(zb,z) end function ticZb() for k,z in pairs(zb) do -- Place zombie z.x=z.x+z.vx z.t=z.t+1 z.tt=z.tt+1 z.y=z.y+z.vy if z.d==1 then z.vx=1 elseif z.d==2 then z.vx=-1 z.flip=0 end if z.dd==0 and z.d==1 then z.x=-10 z.dd=1 elseif z.dd==0 and z.d==2 then z.x=240 z.dd=1 end -- draw zombie spr(370+z.t%30//15*1,z.x,z.y,7,2,z.flip,0) -- comportement if z.y>=80 then z.y=80 else z.vy=0.92 end -- remove zombie if z.tt>=300 then table.remove(zb,k) end end end -- vampire vp={} function addVp(y) local v={} v.x=0 v.y=y v.vx=1 v.vy=0 v.d=math.random(2) v.dd=0 v.flip=1 v.t=0 v.tt=0 table.insert(vp,v) end function ticVp() for k,v in pairs(vp) do -- Place vampire v.x=v.x+v.vx v.t=v.t+1 v.tt=v.tt+1 v.y=v.y+v.vy if v.d==1 then v.vx=1 elseif v.d==2 then v.vx=-1 v.flip=0 end if v.dd==0 and v.d==1 then v.x=-10 v.dd=1 elseif v.dd==0 and v.d==2 then v.x=240 v.dd=1 end -- draw vampire spr(354+v.t%30//15*1,v.x,v.y,7,2,v.flip,0) -- comportement if v.y>=80 then v.y=80 else v.vy=0.92 end -- remove vampire if v.tt>=300 then table.remove(vp,k) end end end -- draw actors da0=0 da1=0 da2=0 da3=0 da4=0 da5=0 function drawActors() ticPlayer() ticCh() ticLi() ticBat() ticGh() ticBh() ticPpc() ticZb() ticVp() ticBr() -- add Player if p==0 then p=1 addPlayer(90,50) end -- add ennemies map 0 if mapp==0 then da0=math.random(2) if t>=80 and da0==1 then addLi(75) t=0 end if t>=80 and da0==2 then addCh(75) t=0 end end -- add ennemies map 1 if mapp==1 then da1=math.random(3) if t>=80 and da1==1 then addCh(75) t=0 end if t>=80 and da1==2 then addLi(75) t=0 end if t>=80 and da1==3 then addBr(55) t=0 end end -- add ennemies map 2 if mapp==2 then da2=math.random(3) if t>=80 and da2==1 then addBh(55) t=0 end if t>=80 and da2==2 then addLi(75) t=0 end if t>=80 and da2==3 then addBr(55) t=0 end end -- add ennemies map 3 if mapp==3 then da3=math.random(2) if t>=80 and da3==1 then addBh(55) t=0 end if t>=80 and da3==2 then addLi(75) t=0 end end -- add ennemies map 4 if mapp==4 then da4=math.random(4) if t>=80 and da4==1 then addBat(55) t=0 end if t>=80 and da4==2 then addBh(55) t=0 end if t>=80 and da4==3 then addZb(75) t=0 end if t>=80 and da4==4 then addVp(75) t=0 end end -- add ennemies map 5 if mapp==5 then da5=math.random(4) if t>=80 and da5==1 then addBat(55) t=0 end if t>=80 and da5==2 then addGh(55) t=0 end if t>=80 and da5==3 then addZb(75) t=0 end if t>=80 and da5==4 then addVp(75) t=0 end end -- dieP() t=t+1 end -- die player function dieP() if die==1 then tdie=tdie+1 end if tdie>190 then table.remove(li) table.remove(gh) table.remove(ch) table.remove(bat) table.remove(bh) table.remove(zb) table.remove(vp) end if tdie>=200 then zero=over mm=0 p=0 die=0 tdie=0 end end ----- mapp=0 mx=0 my=0 mm=0 function drawMap() map(mx,my) if mapp==0 then mx=0 my=0 elseif mapp==1 then mx=30 my=0 elseif mapp==2 then mx=60 my=0 elseif mapp==3 then mx=90 my=0 elseif mapp==4 then mx=120 my=0 elseif mapp==5 then mx=150 my=0 end print("Earth Change",5,14,0) rect(5,20,500/10,5,0) rect(5,20,mm/10,5,4) rectb(5,20,500/10,5,8) if mm>=500 then mapp=math.random(5) mm=0 end mm=mm+1 end function start() cls() drawMap() drawActors() if btnp(6) then zero=pause end end function pause() print("pause",94,60,0,0,2) if btnp(6) then zero=start end end function over() cls(1) print("Game over",68,60,0,0,2) ov=ov+1 if ov>=200 then ov=0 zero=menu end end function about() cls() print("version 1.0.0",96,44) if btnp(5) then zero=menu end end function exitt() trace("Thanks you for playing") exit() end function TIC() zero() end