したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

製作お助け掲示板2

8blank:2012/09/16(日) 02:27:37
まず、Var(4)を0にする記述は

[State ]
Type = VarrangeSet
Trigger1 = Var(59) > 0
First = 9-Var(59);8-Var(59)じゃなかった、ごめん
Last = 8
Value = 0

↑これのVar(59)が5以上だった場合のみだから一緒にVar(5)も0になるハズ
Var(4)が0になってVar(5)がそのままってことは他のVar弄りが働いてるからそれをチェック
もしかしたら常時監視のVarSet読んでるかもしれない

で、Var(4)に格納したIDのヘルパーが消えてVar(5)に格納したIDのヘルパーが残っている場合は

[State ];VarにIDを格納した敵ヘルパーがいなくなった場合、Var(59)にいなくなった数を格納しつつ番号の若いVarへ詰め、Var(58)にはMoveTypeがAの敵ヘルパー数を格納
Type = Null
Trigger1 = Var(1) > 0
Trigger1 = !PlayerIDExist(Var(1));敵の常駐ヘルパーがいるから満たさず。これ以降のTrigger1を読み飛ばしてTrigger2を読み始める。Var(59)は0のまま
Trigger1 = Var(59) := 1
Trigger1 = 0
Trigger2 = Var(1) > 0
Trigger2 = PlayerIDExist(Var(1))
Trigger2 = PlayerID(Var(1)),MoveType = A
Trigger2 = Var(58) := 1
Trigger2 = 0;絶対に満たさず。Trigger3を読み始める。
Trigger3 = Var(2) > 0
Trigger3 = !PlayerIDExist(Var(2));敵の常駐ヘルパーがいるから満たさず。これ以降のTrigger3を読み飛ばす。Var(59)は0のまま
Trigger3 = Var(59) := Var(59)+1
Trigger3 = 0
Trigger4 = Var(2) > 0
Trigger4 = PlayerIDExist(Var(2))
Trigger4 = Var(2-Var(59)) := Var(2) || 1;Var(59)が0なのでVar(2)に現在のVar(2)を代入、つまり変化なし
Trigger4 = PlayerID(Var(2)),MoveType = A
Trigger4 = Var(58) := Var(58)+1
Trigger4 = 0
Trigger5 = Var(3) > 0
Trigger5 = !PlayerIDExist(Var(3));敵の常駐ヘルパーがいるから満たさず。これ以降のTrigger5を読み飛ばす。Var(59)は0のまま
Trigger5 = Var(59) := Var(59)+1
Trigger5 = 0
Trigger6 = Var(3) > 0
Trigger6 = PlayerIDExist(Var(3))
Trigger6 = Var(3-Var(59)) := Var(3) || 1;Var(59)が0なのでVar(3)に現在のVar(3)を代入、つまり変化なし
Trigger6 = PlayerID(Var(3)),MoveType = A
Trigger6 = Var(58) := Var(58)+1
Trigger6 = 0
Trigger7 = Var(4) > 0
Trigger7 = !PlayerIDExist(Var(4));敵のヘルパーがいなくなったから満たす。
Trigger7 = Var(59) := Var(59)+1;Var(59)に1を足す。Var(59)が1になる
Trigger7 = 0
Trigger8 = Var(4) > 0
Trigger8 = PlayerIDExist(Var(4));敵のヘルパーがいなくなったから満たさず。これ以降のTrigger8を読み飛ばす。
Trigger8 = Var(4-Var(59)) := Var(4) || 1
Trigger8 = PlayerID(Var(4)),MoveType = A
Trigger8 = Var(58) := Var(58)+1
Trigger8 = 0
Trigger9 = Var(5) > 0
Trigger9 = !PlayerIDExist(Var(5));敵のヘルパーが残っているから満たさず。これ以降のTrigger9を読み飛ばす。Var(59)は1のまま
Trigger9 = Var(59) := Var(59)+1
Trigger9 = 0
Trigger10 = Var(5) > 0
Trigger10 = PlayerIDExist(Var(5))
Trigger10 = Var(5-Var(59)) := Var(5) || 1;Var(59)が1なのでVar(4)に現在のVar(5)を代入、2行前を満たしているから代入する数値は0より大きい
Trigger10 = PlayerID(Var(5)),MoveType = A
Trigger10 = Var(58) := Var(58)+1
Trigger10 = 0

いなくなった敵ヘルパーがVar(4)の1つだけだった場合はVar(59)が1のまま最後まで実行されて
Var(5)にVar(6)を、Var(6)にVar(7)を、Var(7)にVar(8)を代入してVarRangeSetでVar(8)〜Var(8)を0に、って仕組みなんだけど…

追加する記述に関してはv = var(57)という書き方じゃVar(57)に格納されている数字に対応するVarを弄ることになるからVar(0)が変わっちゃうよ
Var(57)は一度も弄ってないから0になってるだろうし
trigger8のVar(2)はVar(8)の書き換え忘れかな


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板