while構文の想定外の動き(条件にあってなくてもとまらない)
mobをスポーンさせ、while aliveで生きている間の処理をする関数です
{_entity}が死んでもwhileがとまりません…
test も表示されてないので
{_entity} is no alive
自体動いてなさそうです
ほかの処理では{_entity}ちゃんと使えてるので、ここだけだと思います
エラー無いです8 Replies
上のコードでwhileが止まらないかつif動いてないとなると
whileの無限ループ起きてサーバー止まりそうだけど
そういうことになってる?
wait 10 tickしてるのでまあ鯖死にはしないんですけど
モブを出すたびにwhileが蓄積していき
やがて処理落ちします
@mirageeeeeeeeeeeeeeeeeeeeeeeeeee
:: entity:
を消したらちゃんと止まりました
なぜ…
デスポーン(ワールドのいどう)などで消えるとwhileが維持されました
while trueと
stop ifだとどうなの
world1でこいつをspawnさせて
warld2に移動したのち
改めてworld1に行ったところ
画像のように、
まるでそこに透明な{_entity}がいるかのように
ワールド移動の直前まで{_entity}がいた場所で延々と処理が続いていました
地面に散らばってるやつと飛び出てるやつは 薬莢アイテムです
つまりこの虚無空間から雪玉を発射している奴がいます
(殴ったりkillしても判定なし)
ログの50は health of {_entity}です
やはりいるはずのないentityが底にある判定になっています
なんだこりゃ…
まとめ
{_entity}がデスポーンした場合に限り
どちらの条件も動きませんでした
デスポーン時にも正常にストップさせる方法どなたかご存じでしたら教えてください
久々にSkHubみたらこんなのがあるってさ
https://skripthub.net/docs/?id=9472
Skript Hub - Documentation
Is Valid (Condition) - Skript
Checks whether an entity has died or been despawned for some other reason.
Skript2.7以上が必要らしいけど
2.7…(´・ω・`)