投稿
DEF命令がイマイチ分からない
3そうだね
プレイ済み
返信[1]
親投稿
おにぎり EasyPuzzler65
GOSUBと何が違うねん、って感じですか?
0そうだね
プレイ済み
返信[2]
親投稿
簡単に説明しますと、「パラメータだけ用意してGOSUBへ飛ばす」ならばDEFの方が使いやすいという事です。 例えば X=10:Y=10:L$="HELLO":GOSUB @MON:END @MON LOCATE X,Y:PRINT L$ RETURN こんな処理をしたいなら MON 10,10,"HELLO":END DEF MON X,Y,L$ LOCATE X,Y:PRINT L$ END こんな感じで。
0そうだね
プレイ済み
返信[3]
親投稿
ありがとうございます
0そうだね
プレイ済み
返信[4]
親投稿
あ、DEFの最後にRETURNを入れてませんでした。 DEF MON X,Y,L$ LOCATE X,Y:PRINT L$ RETURN END 「END」はDEFの終わりという意味で使われますのでDEF命令の登録ごとに必ず付けて下さい。
0そうだね
プレイ済み
返信[5]
親投稿
おちゃめ ochame_nako
DEF命令を使うとRPGで使える攻撃時に与えるダメージを求める関数も簡単にできます。 DEF DAMAGE(AP,DP)  DM=ROUND(AP/2-DP/4)*(1+RNDF()/5))  IF DM<=0 THEN DM=!RND(3)  RETRUN DM END こんな感じで既存の命令や関数を組み合わせて新しい命令や関数を作れるのがDEF命令です。
0そうだね
プレイ済み
返信[6]
親投稿
おちゃめ ochame_nako
攻撃力100、相手の防御力が50の時に与えるダメージを求めたければDAMAGE(100,50)とするだけで良いです。 こういった自作関数をたくさん作っておけばそれを組み合わせるだけでゲームも簡単に作ることができます。
0そうだね
プレイ済み