1 GP
戰鬥系統修改
作者:An Ting Shi│2009-01-23 23:16:19│巴幣:0│人氣:388
利用寒假的時間把之前寫的戰鬥系統做了點修改
這次新增的就是頭像替換和升級系統之類的
其實跟上次沒太大的差異= = |||
對ns沒興趣的人看看就好=v=
然後裡面有些斜線會被鬼隱
所以對ns有興趣的人一樣看看就好...(汗)
話說那吃藥系統不知道被改了什麼
每次一跑到*open標籤就會出錯退出
就算把之前寫成功的那一段貼上去還是一樣....
有人要幫我除錯嗎? > <
吃藥地方沒做太多修改
所以可能吃一吃結果血值比原來還多(汗)
;mode800
*define
intlimit 16,0,10
defsub warstart
defsub warvalue
defsub warselect
defsub warsystem
defsub update
game
;========目標========
;做出數值傳遞
;公式化
;能夠一程式多次使用的效果
;進階想做出商店系統
;升級系統
;裝備系統
;/===========以下是defsub的定義================================/
*warstart
;顯示頭像與對話框
setwindow 200,227,23,17,24,24,0,2,80,1,1,":a;frame2.jpg",178,212
lsp 2,"我方血條.jpg",120,558 ;敵方血框
lsp 3,"敵方血條.jpg",0,0 ;我方血框
print 1
return
;/==========================================/
*warvalue
;/========設定血值===/
mov %10,%17;敵人的血值
mov %11,%18 ;敵人的攻擊力
mov %12,%19 ;敵人的防禦力
;mov %13,%20 ;我方的血值 ;這行不該加上去,加上去之後,每場戰鬥開始都是滿血
mov %14,%21 ;我方的攻擊力
mov %15,%22 ;我方的防禦力
mov %16,%23 ;我方藥品數量
bar 1,%10,4,4,662,32,%10,#ff4444;敵人血條
bar 2,%13,125,562,662,38,%20,#ff4444;我方血條
print 10,500
mov %49,%13;先把當前的血值保存下來,以後藥品系統要用到
print 10,500
return
;/===============================/
*warselect
;戰鬥選項
目前敵方血值%10
我方血值%13
select "攻擊",*mattack,"物品",*things,"防禦",*nothing
*mattack
我方攻擊!!
quake 3,1000
rnd2 %1,3,5 ;設 %1為傷害值,數值3-5之間
sub %10,%14
sub %10,%1
bar 1,%10,4,4,662,32,2000,#ff4444 ;敵人血條減少
print 7,500
敵人的血值%10
if %10<=0 goto*ydie
if %10>0 goto*yattack
end
*yattack
敵人攻擊!!
quake 3,1000
rnd2 %1,3,5;設 %1為傷害值,數值3-5之間
sub %13,%11
sub %13,%1
bar 2,%13,125,562,662,38,%20,#ff4444
print 7,500
我方血值%13
if %13<=0 goto*mdie
if %10>0 goto*warselect
end
*nothing
防禦
if %10<=0 goto*ydie
if %10>0 goto*yattack
end
;/===================敵人死亡====/
*ydie
你贏了!!
;csp-1
barclear ;清除血條
repaint
;lsp 1,"我方頭像.jpg",0,482 ;用lsp來放置我方頭像、血條等等 ;我想這行不必;
留了
print 1
return
;/===============我方死亡====/
*mdie
你輸了!!
end
*things
;/========藥品系統====/
你現在有%16顆藥
select "使用",*open,"不使用",*warselect
*open
if %16>0 goto*youcanuse
if %16=0 goto*youcantuse
end
*youcantuse
你沒藥了!!/
goto*warsystem
end
*youcanuse
sub %16,1
add %13,500
if %13>%49 goto*toomuch
if %13<%49 goto*useful
*toomuch
mov %13,%49
bar 2,%13,125,562,662,38,%24,#ff4444
print 7,500
你的血值現在是%13
goto*yattack
*useful
bar 2,%13,125,562,662,38,%24,#ff4444
print 7,500
你的血值現在是%13
goto*yattack
return
*warsystem
warstart
warvalue
warselect
update
return
*update
;/=====先給血值和攻擊力做基本加減就好===/
add %20,500
add %21,500
return
*start
;/===第一場戰鬥===/
先講一下話
再開始戰鬥
mov %13,2000 ;我方的血值
mov %17,2000;敵人的血值
mov %18,200 ;敵人的攻擊力
mov %19,40 ;敵人的防禦力
mov %20,2000;我方的血值
mov %21,1000;我方的攻擊力
mov %22,40 ;我方的防禦力
mov %23,10 ;我方藥品數量
bg":c;Germany_1006.jpg",13,1000;背景
ld c,":a;敵人.jpg",3,1000 ;敵人
lsp 1,"我方頭像.jpg",0,482 ;用lsp來放置我方頭像、血條等等
warsystem
csp-1
cl c,3,1000
;清掉一切
;==第二場戰鬥====;
;==換敵人=======;
;===換主角頭像===;
ld c,":a;敵人.jpg",3,1000 ;敵人
lsp 1,"我方頭像.jpg",0,482 ;用lsp來放置我方頭像、血條等等
warsystem
;===不換主角不換敵人頭像繼續第三場戰鬥==
warsystem
end
決定不要在這上面繼續耗了
接下來想試寫商店系統,裝備系統看看=v=
引用網址:https://home.gamer.com.tw/TrackBack.php?sn=813711
All rights reserved. 版權所有,保留一切權利