長文については折り畳みを使用しています。
スクリプトサンプルをみる、または、詳細をみる をクリックしてください!
変数関係 (2ページ目) 項目
*基本的なものから。変数を扱えるようになると、複雑な分岐も可能です。
- javascript(ファイル.js)上からのKAG変数アクセス
- iscript 上からのKAG変数指定
- 代入演算子
- iscriptを超えての変数使用エラー
- 変数には型がある
- 変数の型を調べる
- 変数の型を変換する
- 小数点切り捨て。四捨五入
- 吉里吉里 number_format の代わり
- 吉里吉里 substring の代わり
>>変数関係1ページ目にもどる。
>>11件目以降は変数関係(3ページ目)にお願いします。
>>メニューにもどる。
引用元 参考ほか
javascript(ファイル.js)上からのKAG変数アクセス
ゲーム変数の用途は文字や数字を保存するものです。
変数は、tyrano.plugin.kag内で定義されているので、以下のように使うことが出来ます。
スクリプトサンプルをみる
/withを使わない場合は、フル名(tyrano.plugin.kag.stat.f.value1など)でアクセスしてくださ
first.ks-----------------------------
;各変数を設定します
[eval exp="f.value1='ゲーム変数は、1です。'"]
[eval exp="sf.value2='システム変数は、2です。'"]
[eval exp="tf.value3='一時変数は、3です。'"]
[loadjs storage="sample.js"]
;fist.ksで変数を表示します
[emb exp="f.value1"][r]
[emb exp="sf.value2"][r]
[emb exp="tf.value3"][r]
[s]
sample.js----------------------------
with(tyrano.plugin.kag) {
alert(stat.f.value1);
alert(variable.sf.value2);
alert(variable.tf.value3);
stat.f.value1 = "ゲーム変数は、Gameです。";
variable.sf.value2 = "システム変数は、Systemです。";
variable.tf.value3 = "一時変数は、Tempです。";
}
または
TG.stat.f.name = 1;
iscript 上からのKAG変数指定
一時変数:this.kag.variable.tf["変数名"]
ゲーム変数:this.kag.stat.f["変数名"]
システム変数:this.kag.variable.sf["変数名"]
代入演算子
概要に入れた方がいい場合は移動します。
詳細をみる
= |
代入 |
値を変数に代入する |
a=5 |
aに5を代入する |
a=a+5 |
+= |
加算 |
指定された値を加算する |
a+=5 |
aに5を加える |
a=a+5 |
-= |
減算 |
指定された値を減算する |
a-=5 |
aに-5をひく |
a=a-5 |
*= |
乗算 |
指定された値を乗算する |
a
*
=5 |
aに5をかける |
a=a*5 |
/= |
除算 |
指定された値で除算する |
a/=5 |
aに5をわる |
a=a/5 |
%= |
余剰 |
指定された値で除算し余りを求める |
a%=5 |
aを5でわった余り |
a=a%5 |
iscriptを超えてのjsの変数使用エラー
iscriptとendscriptを超えてまた変数を使用するとゲームが止まります。
ローカル変数です。 jsの変数はセーブ用に変換されません。
tf.変数名やf.変数名、sf.変数に渡すことで解決できました。
変数には型がある
「変数には型がある」「それは知っている!」と思った方は、この項目は読まなくても大丈夫です。
詳細を見る
変数を初めて扱ってみたものの「うまく動作しない」「型って何?」と思う方もいらっしゃるかもしれません。
「型」とは変数のタイプで、ティラノスクリプトでは主に「数値」「文字列」の型を使います。
※ 他の型も含めて詳細に知りたい方は例えばこちら↓(so-zou.jp「データ型」)などへ
数値(numberとも言います)
キャラクターの好感度、アイテムの個数、フラグ管理など変数に数値を代入する場合に使います。
[eval exp="f.koukando_charA = 1"]
↑のように、数値は""や''で囲まずに扱います。
文字列(stringとも言います)
キャラクター名、アイテム名、マップ名など変数に日本語、英字、数字(計算不要な場合)、記号などを代入する場合に使います。
[eval exp="f.name_charA = 'はなこ'"]
↑のように、文字列は""や''で囲んで扱います。
すでに""で囲まれた領域内で文字列を扱う場合は''で囲みます。
変数の型を調べる
変数の型を調べるにはtypeof()演算子を使います。
[eval exp="f.character_hp = 5"]
[emb exp="typeof(f.character_hp)"]
↑のようにtypeof(変数名や配列要素)と記述して[emb]タグなどで表示します。
変数の型を変換する
変数の型を文字列から数値に変換する
- 整数を扱う場合:parseInt()関数を使う
- 小数点以下を含む数値を扱う場合:parseFloat()関数を使う
整数を扱う場合:parseInt()関数を使う
詳細を見る
[eval exp="f.hensuu_name = parseInt(f.hensuu_name,10)"]
parseInt(f.hensuu_name,10)の",10"は「10進法」の意味です。これを省略すると、古いブラウザでは値が"0"で始まっている場合に8進数表記で変換されてしまい、バグの原因になる可能性がありますので",10"は必ずつけます。8進数など他の基数を扱う場合はそのように指定します。
※ parseInt()関数について詳細に知りたい場合は、例えばこちら↓(MDN「parseInt()」)などへ
小数点以下を含む数値を扱う場合:parseFloat()関数を使う
詳細を見る
[eval exp="f.hensuu_name = parseFloat(f.hensuu_name)"]
※ parseFloat()関数について詳細に知りたい場合は、例えばこちら↓(MDN「parseFloat()」)などへ
スクリプトサンプルをみる
[eval exp="f.hoge =3.15470"]
[emb exp="Math.floor(f.hoge)"]
[l][r]
結果
吉里吉里 number_format の代わり javascript
数値を3桁区切りにする。
スクリプトサンプルをみる
toLocaleString() を使う。
[iscript]
var num = 23002342;
f.num2=num.toLocaleString();
[endscript]
[emb exp=f.num2]
[l]
結果
吉里吉里 substring の代わり javascript
スクリプトサンプルをみる
[iscript]
str="あいうえおかきく"
f.str=str.substring(3,7);
[endscript]
@emb exp="f.str"
[l]
結果
0あ1い2う3え4お5か6き7く
7-3=4
3番目から四つ表示
この記事についての引用元
ゲーム画像は管理人作ゲームのものです。
ティラノスクリプトは© Copyright ShikemokuMK All Rights Reserved.のものです。