HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
0806
エイカ体力が低い者をターゲットにしたいが、体力0のキャラのせいで処理が上手く行かない2解決


エイカ

リンク

2017/8/6(Sun) 20:47:22|NO.80857

よろしくお願いします

「体力が一番低いものを敵がターゲットに選ぶが
”体力ゼロのキャラクター”はそのターゲットから除外する」
という処理がうまく行きません

とても単純な処理だとは私も思うのですが
体力比較をするにあたり、体力ゼロのキャラがいた場合
それを対象から除外しつつ、一番体力の低いキャラを選ぶという処理が
どうしても出来なくて…

キャラクターは三体、敵の選んだ目標が「ターゲット」変数に入ります

今はこんな感じです

if (体力.1!0)and(体力.1<体力.2)and(体力.1<体力.3):ターゲット=1
if (体力.2!0)and(体力.2<体力.1)and(体力.2<体力.3):ターゲット=2
if (体力.3!0)and(体力.3<体力.1)and(体力.3<体力.1):ターゲット=3

これだと、体力ゼロのキャラクターがいた場合うまく行かないので

アドバイスなど、よろしくおねがいします。



この記事に返信する


沢渡

リンク

2017/8/6(Sun) 20:59:13|NO.80858

これだと、もし仮に1さんの体力が0だった場合、「2さんの体力は1さん未満」
「3さんの体力は1さん未満」という条件は絶対に満たせないわけですよね?
だから、体力が0の人が一人でもいると、ターゲットは無しになります。

私だったら次のように、repeatを使って各メンバーの体力をチェックする方法を使います。

ターゲット=0 //攻撃対象 min=65535 //体力の最低記録 repeat 3 if (体力(cnt+1)!=0)&(体力(cnt+1)<min) { ターゲット=cnt+1 min=体力(cnt+1) } loop



エイカ

リンク

2017/8/6(Sun) 21:05:04|NO.80860

早速のご返答、ありがとうございます!

ちょっと処理が難しくて、私には完全には理解が出来ないのですが
(repeat命令とcnt関数はあまり使わないので)
とりあえず、この処理を使えば
私の思っていたことはできることはわかりました!

沢渡さん、ありがとうございました!
後でじっくり、自分でもこの処理を考えてみます!



ONION software Copyright 1997-2023(c) All rights reserved.