#runtime "hsp3cl" #cmpopt varinit 1 #module C […]
#runtime "hsp3cl" #cmpopt varinit 1 #module C […]
#runtime "hsp3cl"#cmpopt varinit 1#module CharaBase _name,_hp,_mp,_waza#modcfunc namereturn _name#modcfunc hpreturn _hp#modcfunc mpreturn _mp#modcfunc isDeadreturn _hp<=0#modfunc addHp int __hp_hp+=__hp:return#modfunc addMp int __mp_mp+=__mp:return#modfunc allViewmes strf("◇%s >> HP:%4d MP:%4d",_name,_hp,_mp): return#modfunc waza int id,var _charachara=_chara: gosub _waza.id: return stat#global#module Player _name,_hp,_mp,_waza#define ctype _(%1) %1@CharaBase#define new(%1) dimtype %1,5: newmod %1,Player#modinit_name="プレイヤー"_hp=500_mp=500_waza=*attack,*magic,*final,*healreturn*attackif rnd(10)=0 {dmg=80crt="CRITICAL!! "}else {dmg=40crt=""}mes _(_name)+"の攻撃! "+crt+name(_(chara))+"は"+dmg+"のダメージを負った!"addHp _(chara),-dmgreturn 0*magicdmg=100costMp=20if _(_mp)-costMp<0: return 1mes _(_name)+"の攻撃魔法! "+name(_(chara))+"は"+dmg+"のダメージを負った!"addHp _(chara),-dmgaddMp thismod,-costMpreturn 0*finaldmg=300costMp=100if _(_mp)-costMp<0: return 1mes _(_name)+"の必殺攻撃! "+name(_(chara))+"は"+dmg+"のダメージを負った!"addHp _(chara),-dmgaddHp thismod,-50addMp thismod,-costMpreturn 0*healhealHp=100costMp=20if _(_mp)-costMp<0: return 1mes _(_name)+"の回復魔法! "+name(_(chara))+"は"+healHp+"回復した!"addHp _(chara),healHpaddMp thismod,-costMpreturn 0#global#module Enemy _name,_hp,_mp,_waza#define ctype _(%1) %1@CharaBase#define new(%1) dimtype %1,5: newmod %1,Enemy#modinit_name="エネミー"_hp=2000_mp=0_waza=*attackreturn*attackif rnd(10)=0 {dmg=60crt="CRITICAL!! "}else {dmg=30crt=""}mes _(_name)+"の攻撃! "+crt+name(_(chara))+"は"+dmg+"のダメージを負った!"addHp _(chara),-dmgreturn 0#global#module Program#deffunc maindim windim lossrandomizerepeat ,1mes "【BATTLE "+cnt+" FIGHT!】\n"wait 100new@Player plnew@Enemy enallView plallView enmes ""repeatif cnt\2=0 {repeatr=rnd(4)if r!=3: waza pl,r,en: else: waza pl,3,plif stat=0: breakloop}else {waza en,0,pl}if isDead(pl) {mes "\n"+name(pl)+"は倒れた…"loss++break}if isDead(en) {mes "\n"+name(en)+"を倒した!"win++break}mes ""allView plallView enmes ""wait 100loopmes "\nWIN: "+win+" LOSS: "+loss+"\n\n"wait 500loopreturn#globalmain