ben uzun zamandır yapmaya çalısıyorum ama olmuyor topu alıyor sadece duz gidiyor demek istedigim topla istedigi yere gitsin çapraz falan bide teleport_gol olsun topa vurunca o bolgeye gelince gol olsun ve yell gecsin
çok mu şey istedim acaba
// DAGGER FOOTBALL SYSTEM V. 0.3
// Idea and some codes are taken from
// FOOTBALL SYSTEM V. 1.5 By GM Athlon
// Please report bugs ICQ #130013005
// Features of V. 0.3 (28.02.02)
// - fixed all founded bugs.
// - added stamm loss on @STEP
// Features of V. 0.2 (05.02.02)
// - added "can&裟t shoot" on @DCLICK
// - added "can&裟t stop" on @CLICK
// - added "loses ball" on @STEP
// - added DEX gain on @STEP
// - added STR gain on @DCLICK
// - fixed a bug on @CLICK
//*********************************************************
//*********************************************************
[itemdef i_soccer_ball]
id=i_cannon_ball
name=Soccer Ball
type=t_soccer_ball
on=@create
color=029
attr=08010
on=@dclick
if <distance>>2
src.sysmessage Cok uzaktasiniz.
return 1
else
SRC.STAM=<SRC.STAM>-5
f_calcio
if <src.dir>==0
var.mov=0 -1 0
f_shoot
return 1
elseif (<src.dir>==1)
var.mov=1 -1 0
f_shoot
return 1
elseif (<src.dir>==2)
var.mov=1 0 0
f_shoot
return 1
elseif (<src.dir>==3)
var.mov=1 1 0
f_shoot
return 1
elseif (<src.dir>==4)
var.mov=0 1 0
f_shoot
return 1
elseif (<src.dir>==5)
var.mov=-1 1 0
f_shoot
return 1
elseif (<src.dir>==)
var.mov=1 0 0
f_shoot
return 1
elseif (<src.dir>==6)
var.mov=-1 0 0
f_shoot
return 1
elseif (<src.dir>==7)
var.mov=-1 -1 0
f_shoot
return 1
endif
endif
ON=@TIMER
IF (<VAR.TIME>>>0)
MOVE=<VAR.MOV>
VAR.TIME=<EVAL (<VAR.TIME>-1)>
f_shoot
ENDIF
ON=@CLICK
if <distance>>2
src.sysmessage Cok uzaktasiniz.
return 1
elseif (rand(100)>><SRC.STAM>)
src.sayu *Topu alamaz!*
else
src.sayu *Topu alir!*
TIMER=-1
endif
[function f_calcio]
if (rand(10)==0)
var.time=<eval (((<SRC.STAM>)/10)-1)>
src.sayu *Topa vurur!*
elseif (rand(10)==1)
var.time=<eval (((<SRC.STAM>)/10)-2)>
src.sayu *Topa vurur!*
elseif (rand(10)==2)
var.time=<eval (((<SRC.STAM>)/10)-3)>
src.sayu *Topa vurur!*
elseif (rand(10)==3)
var.time=<eval (((<SRC.STAM>)/10)+1)>
src.sayu *Topa vurur!*
elseif (rand(10)==4)
var.time=<eval (((<SRC.STAM>)/10)+2)>
src.sayu *Topa vurur!*
elseif (rand(10)==5)
var.time=<eval (((<SRC.STAM>)/10)+3)>
src.sayu *Topa vurur!*
elseif (rand(10)==9) && elseif (rand(100)>><SRC.STAM>)
src.sayu *Topa vuramaz!*
var.time=0
else
var.time=<eval ((<SRC.STAM>+<SRC.STR>)/10)>
src.sayu Topa vurur!
endif
[typedef t_soccer_ball]
on=@step
IF (rand(100)>><SRC.STAM>)
src.sayu Topu kaybeder.
ELSE
f_step
ENDIF
[function f_shoot]
TIMER=1
//STR gain
IF ((<SRC.STR><<60) && (rand(25)==1))
SRC.STR=(SRC.STR)+1
ELSEIF ((<SRC.STR><<70) && (rand(30)==1))
SRC.STR=(SRC.STR)+1
ELSEIF ((<SRC.STR><<80) && (rand(40)==1))
SRC.STR=(SRC.STR)+1
ELSEIF ((<SRC.STR><<90) && (rand(45)==1))
SRC.STR=(SRC.STR)+1
ELSEIF ((<SRC.STR><<100) && (rand(50)==1))
SRC.STR=(SRC.STR)+1
ENDIF
[function f_step] //DEX gain and STAM loss
IF (TAG.SBALL)
SRC.TAG.SBALL=0
ELSE
SRC.TAG.SBALL=<SRC.TAG.SBALL>+1
ENDIF
IF (<TAG.BALL>==10)
SRC.STAM=(SRC.STAM)-1
SRC.TAG.SBALL=0
ENDIF
TIMER=-1
IF ((<SRC.DEX><<60) && (rand(100)==1))
SRC.DEX=<SRC.DEX>+1
ELSEIF ((<SRC.DEX><<70) && (rand(200)==1))
SRC.DEX=<SRC.DEX>+1
ELSEIF ((<SRC.DEX><<80) && (rand(300)==1))
SRC.DEX=<SRC.DEX>+1
ELSEIF ((<SRC.DEX><<90) && (rand(400)==1))
SRC.DEX=<SRC.DEX>+1
ELSEIF ((<SRC.DEX><<100) && (rand(0)==1))
SRC.DEX=<SRC.DEX>+1
ENDIF
if <src.dir>==0
move=0 -1 0
elseif <src.dir>==1
move=1 -1 0
elseif <src.dir>==2
move=1 0 0
elseif <src.dir>==3
move=1 1 0
elseif <src.dir>==4
move=0 1 0
elseif <src.dir>==5
move=-1 1 0
elseif <src.dir>==6
move=-1 0 0
elseif <src.dir>==7
move=-1 -1 0
endif
ee bi cwp verseniz
Bu konu berkanu tarafından düzenlendi(2008-03-30 12:15, 16 yıl önce)