|
İçerde : 1 misafir, 0 üye : ---
|
[itemdef i_duvarat]
id = i_box_wood
name = duvar at
on=@dClick
targetg Hedef?
return 1
on=@TargOn_Ground
IF ( <SRC.DIR> == 0 ) || ( <SRC.DIR> == 4 ) || ( <SRC.DIR> == 5 ) || ( <SRC.DIR> == 7 )
LOCAL._POSITION = <EVAL <SRC.TARGP.X>+4>
LOCAL._STATUS = 1
ELIF ( <SRC.DIR> == 6 ) || ( <SRC.DIR> == 2 ) || ( <SRC.DIR> == 1 ) || ( <SRC.DIR> == 3 )
LOCAL._POSITION = <EVAL <SRC.TARGP.Y>+4>
ENDIF
FOR 1 6
SERV.NEWITEM = 080
IF ( <dLOCAL._FOR> < 1 )
LOCAL._POSITION ++
ELSE
LOCAL._POSITION --
ENDIF
IF ( <dLOCAL._STATUS> == 1 )
NEW.P = <dLOCAL._POSITION>,<SRC.TARGP.Y>
ELSE
NEW.P = <SRC.TARGP.X>,<dLOCAL._POSITION>
ENDIF
NEW.TIMER = 3
ENDFOR
RETURN 1
[DEFNAME YONLER]
yon.1 s
yon.2 e
yon.3 n
yon.4 w
yon.5 se
yon.6 ne
yon.7 sw
yon.8 nw
for 1 8
serv.newitem i_wall_stone_7
new.p <targp>
new.move <def.yon.<dlocal._for>> <dlocal._for>
endfor
RasmuS :
Kod:[DEFNAME YONLER]
yon.1 s
yon.2 e
yon.3 n
yon.4 w
yon.5 se
yon.6 ne
yon.7 sw
yon.8 nw
for 1 8
serv.newitem i_wall_stone_7
new.p <targp>
new.move <def.yon.<dlocal._for>> <dlocal._for>
endfor
Akşam pazar aklıma ilk gelen yöntem.
new.move <def.yon.<dlocal._for>> <dlocal._for>
kısmında yazmış olduğun yon kısmını ' yonler ' yaptığımda bu sefer tek çizgi üzerinde gitti ancak yine istediğim yöne atamıyorum hep aynı yöne atıyor maalesef.[itemdef i_duvarat]
id = i_box_wood
name = duvar at
on=@dClick
targetg Hedef?
return 1
on=@TargOn_Ground
serv.NewItem = i_wall_stone_7
new.P = <src.targp>
return 1
B3LyRsy2 :
araya for girince karakter kendi üzerinden farklı 8kare
görüyor sanırım resimde.
yon.1
yon.2
bunları yonler yaptıktan sonra
burda new.move <def.yonler.<dlocal._for>> <dlocal._for> değişti mi
MirroR :
Tekrar dene güncelledim yanlış yazmışım
on=@TargOn_Ground
FOR 1 6
serv.NewItem = 080
new.P = <EVAL <SRC.TARGP.X>+<dLOCAL._FOR>>,<SRC.TARGP.Y>
new.Type = t_Xx
new.Timer = 1
ENDFOR
return 1
[typedef t_Xx]
on=@Timer
remove
return 1
on=@TargOn_Ground
IF ( <SRC.DIR> == 0 ) || ( <SRC.DIR> == 4 ) || ( <SRC.DIR> == 5 ) || ( <SRC.DIR> == 7 )
LOCAL._POSITION = <EVAL <SRC.TARGP.X>+4>
LOCAL._STATUS = 1
ELIF ( <SRC.DIR> == 6 ) || ( <SRC.DIR> == 2 ) || ( <SRC.DIR> == 1 ) || ( <SRC.DIR> == 3 )
LOCAL._POSITION = <EVAL <SRC.TARGP.Y>+4>
ENDIF
FOR 1 6
SERV.NEWITEM = 080
IF ( <dLOCAL._FOR> < 1 )
LOCAL._POSITION ++
ELSE
LOCAL._POSITION --
ENDIF
IF ( <dLOCAL._STATUS> == 1 )
NEW.P = <dLOCAL._POSITION>,<SRC.TARGP.Y>
ELSE
NEW.P = <SRC.TARGP.X>,<dLOCAL._POSITION>
ENDIF
NEW.TIMER = 3
ENDFOR
RETURN 1
MirroR :
Kod:on=@TargOn_Ground
IF ( <SRC.DIR> == 0 ) || ( <SRC.DIR> == 4 ) || ( <SRC.DIR> == 5 ) || ( <SRC.DIR> == 7 )
LOCAL._POSITION = <EVAL <SRC.TARGP.X>+4>
LOCAL._STATUS = 1
ELIF ( <SRC.DIR> == 6 ) || ( <SRC.DIR> == 2 ) || ( <SRC.DIR> == 1 ) || ( <SRC.DIR> == 3 )
LOCAL._POSITION = <EVAL <SRC.TARGP.Y>+4>
ENDIF
FOR 1 6
SERV.NEWITEM = 080
IF ( <dLOCAL._FOR> < 1 )
LOCAL._POSITION ++
ELSE
LOCAL._POSITION --
ENDIF
IF ( <dLOCAL._STATUS> == 1 )
NEW.P = <dLOCAL._POSITION>,<SRC.TARGP.Y>
ELSE
NEW.P = <SRC.TARGP.X>,<dLOCAL._POSITION>
ENDIF
NEW.TIMER = 3
ENDFOR
RETURN 1
|