斧月 2023/07/24 22:10

SRPGstudio雑記ーまたボツサルベージの巻ー

誰だよこのイベント組んだヤツ、私だった

今回はSRPGstudioのお話(制作者向け)
複雑化しすぎて投げた制作中データから使えそうなロジックをサルベージ中…

行動ユニットの周囲のユニットIDをまとめて検出

嘘は言ってない
使用変数(周囲2マスの場合)
座標X
座標Y
座標X+1
座標X+2
座標X-1
座標X-2
座標Y+1
座標Y+2
座標Y-1
座標Y-2
アクティブ座標X
アクティブ座標Y

使用ID変数
範囲取得(X,Y)じぶん
範囲取得(X+1,Y)
範囲取得(X-1,Y)
範囲取得(X,Y+1)
範囲取得(X,Y-1)周り1マス
範囲取得(X+1,Y+1)
範囲取得(X+1,Y-1)
範囲取得(X-1,Y+1)
範囲取得(X-1,Y-1)
範囲取得(X+2,Y)
範囲取得(X-2,Y)
範囲取得(X,Y+2)
範囲取得(X,Y-2)周り2マス
ID変数の初期値は9999が望ましい
空白マスを示す値が(多分)9999のため

下準備
アクティブ座標Xにユニット:アクティブのX座標を代入
アクティブ座標Yにユニット:アクティブのY座標を代入
座標X、座標Yに0を代入
座標X+1、Y+1に1を代入
座標X+2、Y+2に2を代入
座標X-1、Y-1に-1を代入
座標X-2、Y-2に-2を代入

本編
座標X、座標X+1、座標X+2、座標X-1、座標X-2にアクティブ座標Xを加算
座標Y、座標Y+1、座標Y+2、座標Y-1、座標Y-2にアクティブ座標Yを加算

範囲取得(X,Y)に座標(座標X、座標Y)のユニットIDを代入
範囲取得(X+1,Y)に座標(座標X+1,座標Y)のユニットID(略
範囲取得(X-1,Y)に座標(座標X-1,座標Y)のユニ(略
範囲取得(X,Y+1)に座標(座標X,座標Y+1)(略
以下単純作業につき全略
強引に周囲2マスのユニットリストを出力

結論
人間足掻くことが大事なときもあるけど、うん…
え…?周囲10マスくらい欲しい?
必要なID変数は1+4+8+12+16+20+24+28+32+36
ID変数増えすぎるとめんどい動作が重くなるのでおすすめはしません
当時の私は7マスでこれは無理だと止めました

繋げられそうな表現?
竜巻魔法で範囲内敵ユニットの配置を入れ替えてしまうとか
乱数でくじ引き作って範囲内に数発誰かには当たる隕石とか…かな
実用化にはまだハードル高いですが

敵ユニットを対象にして始点にしたい場合?
特定ステートが1以上存在することを起動条件にマップ座標の抽出
アクティブから数マス以内の特定ステート持ちを検出
座標をアクティブ座標X、アクティブ座標Yに取り込めばいけるはず



そして本編の楽曲配布ですが…フォロワー以外何配っているかわからないから
見に来ただけでも試聴できるように作ろう、そうしよう

本日の楽曲

アルバム
光剣(少しダークな王道ファンタジー)
タイトル
幾多の屍越えて/Beyond sacrifice

幾多の屍越えてー戦陣ー/Beyond sacrifice-Battle Phase-

コラム
全滅するまでの殲滅戦となる後半マップをイメージしたSRPG向け楽曲
通常版はロング構成になっています。

フォロワー以上限定無料

楽曲配布中

無料

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

記事のタグから探す

月別アーカイブ

限定特典から探す

記事を検索