top of page

[elsif][if]の複数条件分岐で&&(なおかつ)を使いたい。

  • asayuki0130
  • 8月9日
  • 読了時間: 2分



①好感度>100のときは[内容A]を表示する

②好感度が==100、なおかつフラグがBのときは[内容B]を表示する。


これをやりたいとき、[else](○○ではない場合、それ以外~)だと対応できない。

うちじゃ好感度は100までなんだよ!110とかで分岐させるわけにはいかないの!


100

┣なおかつA

┣なおかつB

┣なおかつC

┗・・・


こうしたい。

(┗は、けいせんって打つと出てくるよ/豆知識)



[if exp="f.koukando<=0"]
		[内容default]好感度は0です

	[elsif exp="f.koukando<=100"]
		[内容A]好感度は100です

	[elsif exp="f.koukando==100 && f.falg=='B'"]
		内容B]好感度は100で、なおかつフラグBです。

[endif]


書いてみたけど動かない。

[内容A]が先に表示されちゃう。



【解決編】


ティラノスクリプトって上からタスクをこなしていく。



だから先に[内容A/好感度100の時]を書いちゃうと、

そのレーン(行)で即判断して[内容A]を表示しちゃう。


あとから[内容B]の条件を読ませても、もう対応してるんで。


ってなっちゃう。


あとから「あ、さっきのタスク、もしBだったらBに振り分けといてね」が通用しないんだ。

てっきり、一旦全部if~endifを全部読み込んでから対処してるのかと思ってたよ。

違った、うえから順に即決でやってた。


なので解決策としては、



[if exp="f.koukando<=0"]
		[内容default]好感度は0です

	[elsif exp="f.koukando==100 && f.falg=='B'"]
		[内容B]好感度は100で、なおかつフラグBです。

	[elsif exp="f.koukando<=100"]
		[内容A]好感度は100です
[endif]


こうやってなおかつを先に書くこと。

ド素人はこういう前提知識がないから、基礎のjavascriptくらい読んでおいた方がいいなぁ。

なんでタブで段差を付けるのか…とか未定義とnullの違いとか。

わかんないよね、こっちは絵描きなんだよ。


変数を使うときに、未定義を準備しておく必要とかわからなかったなぁ。

今もお守りでhensu.ksとかに書いておいて、first.ksとかにcallで読み込ませてる。


;call_hensu.ks

;好感度の未定義を設定
[if exp="f.koukando==undefined"]
	[eval exp="f.koukando=0"]
[endif]

;フラグの未定義を設定
[if exp="f.falg==undefined"]
	[eval exp="f.falg = 'false'"]
[endif]

;frst.ks
;■必須ファイルの読み込み

@call storage="call_hensu.ks"

undefined(未定義)・・・トイレットペーパーのホルダーに芯すら入ってない状態(虚無)

null・・・芯だけ残ってる状態(残高0)


って聞いたことある

コメント


特集記事
最新記事
アーカイブ
タグから検索
ソーシャルメディア
  • Facebook Basic Square
  • Twitter Basic Square
  • Google+ Basic Square

© 2025 SIMPLE MANIA CREATE. Ceator by ASAYUKI

bottom of page