#author("2018-06-23T01:30:44+09:00","","") **更新履歴454to500 [#l1b583d6] 454~ 書いてみた~ 455~ 命令をサブルーチン化~ 456~ 命令をswitchに織り込む~ 458~ ラベル変数をでっちあげる~ 461~ 462~ 一命令一分岐へ~ 463~ ラベル定義ちょっと簡略に~ ~ 454~ 変なスクリプト出来ましたw~ まだまだ 抽象化させたいっす~ 455~ 変なスクリプト 軽く改造しましたw~ 456~ 方向性迷走中っすw~ 458~ ラベル変数っぽいのをでっちあげてみました~ IDで指定してから文字列比較してます~ 459~ 略語 多すぎっすね~ i インスタンス~ en enumの~ pc プログラムカウンタ~ cr current~ com コマンド~ bt ボタン~ ~ そもそも インスタンスじゃなくメンバのような気もしてきた~ 461~ ラベル定義でっちあげてみました~ だんだん見にくくなってます~ めんどくさくてユニークラベル使ってないw~ 462~ 一つの分岐を一つの動作にしてみました~ 例はあればるほどいいのかな?~ 次は変数とifとrepeatとwhileあたりの実装っすw~ 463~ 軽く改造~ 464~ スイッチ入ってたらでhogehoge1~ 465~ ラベルpc探索時 ジャンプ先を指定しなくてもよくなりました~ 466~ 記述漏れ記述~ 467~ 行番号登録のサンプルです~ 468~ __LINE__ 行 代入~ 469~ プログラム言語的な動き方は、現在~ ラベル登録。pc登録。実行~ の3種類の動き方があるんですが~ 素直にフラグで分岐しよう。と~ 未だ断片的な動かないコードですけどw~ 470~ なんか しばらくしたら 何を実装したかったか 忘れそうw~ 473~ Module_GSいじってますw~ いいかんじにスクリプトになりそうですが~ HSPまんま動かすのとどう違うかよくわからなかったりw~ 475~ cmd=objsize:cp1=120:cp2=20とかをマクロにまとめれそうってことと~ 途中に突入したいときは 違うマクロにしましょう。と~ if p_a==1&&_pb==1:~ のように二つのindexで分岐できないかな?ってとこです~ 477~ サンプルスクリプト合成中~ 478~ 引数に変数を代入するのはHSPの変数ならできますが~ でっちあげた変数だと出来ないので~ レジスタもどきに代入する命令を作って~ 一回レジスタもどきに代入する動作の後~ 引数にレジスタもどきを代入しようかな。と~ 479~ 引数に変数を代入したい時~ そういう処理をサブルーチンにして呼べないかな?~ って出来そうですw~ この辺で処理をマクロにしちゃうのもアリですな~ 低級言語+マクロ処理はテーマのひとつなので~ 483~ 一応、軽く書き直した結果動くようになりましたw~ if 0 みたいな飛び込んでくる前提のブロック作ったりw~ 484~ 意味のない処理を3種類サブルーチンにしました~ 485~ サブルーチンの中でgotoしてるのでW~ サブルーチンをマクロ形式にしました~ 486~ でっちあげたラベル変数のIDが自動的に決まってしまうので~ ID自由入力型ラベル変数を作りたいですな~ mod_labelをコピペ改造で割と楽に出来そう~ 489~ どう書けばいいかよくわかんない時の~ コンパイラがエラー通知してくれるの便利ですね~ 命令にlocalつけたりなんかすると~ 呼び出しで記述してないとこ教えてくれたり~ 基本、エラーむかつくんですが~ vimなんかだと止まらないみたいですね~ ~ ユニークタグつきのラベル記述しまくって~ 最初のflag内でラベル配列に登録できないかな?~ 毎回、最初からサーチしてるのでw~ ~ プログラムとのやりとりvimで試してみたいですね~ 僕のシンプルゲームライクにw~ ~ エディタ書いてみようかな?と少々思ったり~ RPGツクール型のw~ 490~ ・おばかーw~ 代入したはずの値が反映されなくて、はまってたんですが~ cp3をc3とタイポw~ 後ろの方のコードが動かなかったら~ 配列サイズ500w(500行しか動かないw)~ #かたまりが30個までだったからかもw~ ifとかrepeatとか考えるとラベル全部に値設定するの大変だから~ 値一つに複数のラベルを結びつけないかな?と~ LINKリストみたいに~ 491~ 失敗は悪いことじゃないのに なんで恐れるかな~ 変なエリート気質でもあるんかな~ ちょっとした間違いで何時間も悩むのむかつくし~ とか言って戦う心を忘れては何も出来ないですよね~ 変に恐れて自信がないからたいしたもの作れないのかも~ 本当に野心的な作品って~ 僕の比じゃない深刻なバグと隣り合わせなはずですよね~ 493~ 毎回*sw_beginに戻らなくていいっかってことで~ goto文減らしました~ 494~ かたまりの前にマクロのラベルを定義して~ ラベル配列に格納しました~ 495~ def_head def_label_auto def_label_free~ の3つのマクロを用意して記述を短縮しました~ 498~ 作成途中スクリプトw~ かたまりが30個くらいあって~ 全部変換するのタイギでw~ サブルーチン化したり ユニークラベル使ったりした後で~ 単純に前後をマクロにしましたw~ 499~ サンプルスクリプトです~ 483 の改造~ ラベル定義のタイミングでマクロ反映させました~ LINE定義のタイミングでマクロ定義実行出来るかも~ ここまで来たらアレですねw~ 変数名と添え字をマクロで管理出来るかもw~ 分類名と変数名と添え字をセットで管理しなきゃなので~ モジュール化したほうがいいかも~ 500~ 普通はデータを配列化して~ 繰り返すんでしょうけど~ データを具体的に記述して~ マクロで短くする方が~ (僕には)合ってるかもですね~ アセンブラとか昔は乱立してたぽくて~ 作成するのが簡単だから~ 乱立してたんちゃう?みたいな~