Anasayfa
UO Sunucular
Forumlar
Profilim
UO-Developer.COM
[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 You're too far.

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 You're too far.

return 1

elseif (rand(100)>><SRC.STAM>)

src.emote can't stop the ball

else

src.emote stops the ball!

TIMER=-1

endif



[function f_calcio]

if (rand(10)==0)

var.time=<eval (((<SRC.STAM>+<SRC.STR>)/10)-1)>

src.emote shoots the ball!

elseif (rand(10)==1)

var.time=<eval (((<SRC.STAM>+<SRC.STR>)/10)-2)>

src.emote shoots the ball!

elseif (rand(10)==2)

var.time=<eval (((<SRC.STAM>+<SRC.STR>)/10)-3)>

src.emote shoots the ball!

elseif (rand(10)==3)

var.time=<eval (((<SRC.STAM>+<SRC.STR>)/10)+1)>

src.emote shoots the ball!

elseif (rand(10)==4)

var.time=<eval (((<SRC.STAM>+<SRC.STR>)/10)+2)>

src.emote shoots the ball!

elseif (rand(10)==5)

var.time=<eval (((<SRC.STAM>+<SRC.STR>)/10)+3)>

src.emote shoots the ball!

elseif (rand(10)==9) && elseif (rand(100)>><SRC.STAM>)

src.emote can't shoot the ball!

var.time=0

else

var.time=<eval ((<SRC.STAM>+<SRC.STR>)/10)>

src.emote shoots the ball!

endif



[typedef t_soccer_ball]

on=@step

IF elseif (rand(100)>><SRC.STAM>)

src.emote loses the ball.

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 ! (SRC.TAG.SBALL)

SRC.TAG.SBALL=0

ELSE

SRC.TAG.SBALL=<SRC.TAG.SBALL>+1

ENDIF

IF (<SRC.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

UO-Dev SPONSOR

Paylaş

XFacebook

Faydalı mı?

Bu içerik size yardımcı oldu mu?

UO-Dev SPONSOR

Henüz yorum yapılmamış. Yorum yazabilmek için giriş yapmanız gerekir.

Üyelerin oylama ortalaması (10 dışında) :

Henüz Oylanmamış

Oylar: 0

Paylaş

XFacebook

Faydalı mı?

Bu içerik size yardımcı oldu mu?