07/03/14 02:09:15 pkgaAWGt.net
>>274 ゲーム中に変化があるのは整数型でデータを持ってた方が扱いやすいと思う
#define PLAYMAX 10
#enum PLAY1=0
#enum PLAY2
#enum playNAME=0
#enum playLEVEL=6
#enum playHP
#enum playMP
#enum playEN
#enum playEX
#enum playTEMP
#enum playtempEND=playTEMP+10
#enum playEND
#enum playITEM
#enum playitemEND=playITEM+20
#enum playdatEND
pmess="名前","レベル","HP","MP","所持金","EXP","所持アイテム種類数","個","アイテム個数"
load="10,ポーション,100,5,回復(小)\\雑魚が良く落とす\n15,回復剤,200,10,回復(大)\n"
load+"20,解毒剤,320,30,毒消し\\たまに効かない\n100,短剣,2000,100,80,5,5,武器\\一番弱い武器"
setlst item,load:itemmax=stat+1:dim play,playdatEND,PLAYMAX:n="名無しA":
memcpy play,n,strlen(n),playdatEND*4*PLAY1,0:play(playLEVEL,PLAY1)=5,100,30,5000,12345
play(playITEM,PLAY1)=100,1,10,3,20,5:n="ななしB":memcpy play,n,strlen(n),playdatEND*4*PLAY2,0
play(playLEVEL,PLAY2)=10,300,200,10000,23456:play(playITEM,PLAY2)=15,1,10,10,20,5,100,2
repeat playmax:if play(0,cnt)=0 {continue } ;存在しないIDは飛ばす
pid=cnt:mes "プレーヤーID: "+pid :sdim n,5*20:memcpy n,play,20,0,(playdatEND*4)*pid
mes pmess(0)+": "+n:repeat playTEMP-playLEVEL:mes pmess(cnt+1)+": "+play(cnt+playLEVEL,pid) :loop:b=""
repeat :if play(playITEM+cnt*2,pid)=0{icnt=cnt:break}
i=play(playITEM+cnt*2,pid):is=play(playITEM+cnt*2+1,pid) ;アイテムIDと所持数
itemstr=item(i) :getstr n,itemstr,0,',' ;アイテムIDからアイテムデータ取り出し
b+n+" "+is+pmess(7)+"\n":loop:mes pmess(6)+": "+icnt:mes b:loop:stop
↑271のモジュールを使うのが前提