ホムンクルスAIについての独り言
[ラグナロクオンライン]のホムンクルスシステムで使用する ホムンクルスAIのカスタマイズについてのメモ
プロフィール

モルティシア

Author:モルティシア
何時の間にやら貧乏キャラが定着しそのまま「安ケミ」と呼ばれるようになった「安っぽいケミ」
一時休止していたものの、最近ふたたびホムンクルスのカスタムAIの開発&公開を再開
メマー無しPC3の42転職
[完全製薬・完全露店]キャラ

カテゴリー

月別アーカイブ

最近の記事

最近のコメント

最近のトラックバック

ブロとも申請フォーム

この人とブロともになる

リンク

このブログをリンクに追加する

ブログ内検索

RSSフィード

FC2カウンター

メールフォーム

名前:
メール:
件名:
本文:

スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ぐろーばるへんすう
MyStateとか、MyEnemyとか、MyDestXとか、MyDestYとか
このままだと、関数のキャメルケースと記述が似ていてややこしい

ということで「g_」を接頭につけて
g_MyStateとか、g_MyEnemyとか、g_MyDestXとか、g_MyDestYとか
とかにしていった!

そんな作業の中で気づいたのだけど
意外とこれ使ってるとこ少ない

というわけで
これらのグローバル変数、いくつかは廃止することができるんじゃないかなとふと思った
特にMyIDなんかは毎回何度も何度も渡されているわけで

グローバル変数を廃止することによる個人的なメリットを並べると
1.うっかり同じ名前で定義してしまって中身が上書きされるというケアミスを防ぐ
2.同じ役割の変数は同じ名前で使いまわしたほうがメソッド単位で処理を読むとき理解し易いので使いまわせるようにしたい
3.そのメソッドで利用するパラメタを把握するため、利用するパラメタは引数で完結させたい

久々にソースをみたとき「あれ?これってどこで使われてたっけ?」というのが良く起こるので、必ず引数で渡したものだけを使うことでこれが絞り込み易くなるのと
うっかり変なところでパラメタ上書きしてしまうことのケアミスを防ぐというのがでかい。

グローバル変数は確かにいちいち書かなくてもすぐ中身確認して書き換えできるのは便利、しかし一回忘れるとミスを呼ぶ原因にもなる
しばらく仕事で、自分でプログラム書いてそれを保守してなどとしていると、グローバル変数はトラウマになってきます
こわい、グローバル変数の存在が怖い
せめてクラス変数にして…!

というわけで
グローバル変数撲滅したいなぁと思ったのです

まずはそれより先に
OnIDLE_ST ()

とかを
OnIdleSt ()
とかに変更したい

このままだとぱっと見定数の
IDLE_STやFOLLOW_STと混ざって目が滑ります

定数は中身を変えない前提で使うのです
Luaは定数がもともと存在しないため、書き換えできちゃうので、
定数としての名前のルールで作った変数は、定数として扱うためぜったいに書き換えないと言うルールを守らないといけない
そうしないとグローバル変数の恐怖が…

そんなこんなでまだデフォAIを弄っています
安ケミAIの機能をそろそろ組み込みたいですが、まだ準備が出来ていない状態
なかなか手ごわい
スポンサーサイト
この記事に対するコメント

この記事に対するコメントの投稿














管理者にだけ表示を許可する


この記事に対するトラックバック
トラックバックURL
→http://yasukemi.blog49.fc2.com/tb.php/101-f5cb0226
この記事にトラックバックする(FC2ブログユーザー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。