忍者ブログ

2025

0404
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

2021

0929
こんにちは。
しぇらです。

さて、今回は本題の通り、違和感を持った話について。
前回同様、地道に新しい短編を作っているのですが、なーんかメッセージウィンドウが変だな…と。



左右の隙間に違和感。
右の隙間が大きいんですよね。
なんでなん…。

仕方がないので、コモンの「[63]メッセージウィンドウ」を見てみます。
メッセージウィンドウの大きさは、28, 29 行目に書いてありまして、座標倍率はその上、23, 24行目に書いています。



○ウィンドウサイズ
■変数操作:CSelf38[サイズX]=30*CSelf88[座標倍率X(x10)]
■変数操作:CSelf39[サイズY]=7*CSelf89[座標倍率Y(x10)]

○座標倍率
■DB読込(可変):CSelf88[座標倍率X(x10)]=可変DB[基本システム用変数:97:0](18:座標倍率X[x10]:数値)
■DB読込(可変):CSelf89[座標倍率Y(x10)]=可変DB[基本システム用変数:98:0](18:座標倍率X[x10]:数値)

で、この座標倍率の計算ってどうなってるの?というのは、これまた別のコモン「[48]基本システム自動初期化」の31, 32行目に書いてあります。



■変数操作:CSelf25[一次変数A]=Sys116:[読]画面サイズX/32
■変数操作:CSelf26[一次変数B]=Sys117:[読]画面サイズY/24

こんな感じで書いてあります。
この「画面サイズ/32」がメッセージウィンドウの横サイズに影響しているのだということが分かりました。(あとで可変DBに書き込みをしていることから、計算結果が座標倍率に代入されていることが分かります。)

で、今回のウィンドウサイズは848×480です。
16:9のウディタにいつの間にか搭載されていた新しいサイズです。

848/32=26.5
…あぁ、これ小数点以下切り捨てられてんな、ということがここでわかります。(なんでなん?)
というのも、ウディタでゲーム確認をするときF7キーを押すと、今どんなピクチャがどのサイズで、どの位置に表示されているのか、というのが見ることができます。

このとき、メッセージウィンドウサイズ:X=780 になっています。

[63]メッセージウィンドウより
■変数操作:CSelf38[サイズX]=30*CSelf88[座標倍率X(x10)]
 →30*26=780

一致しますね。
なので、小数点以下切り捨てということが分かりました。

おそらくこれが影響してなーーんか微妙な感じのメッセージウィンドウ位置になったのでしょう。
ゲーム画面がX=848 なので、

848/2=424

なので、中心座標X=424 に調整してみます。
現在のメッセージウィンドウの中心座標はX=416 となっているので、ここに移動させたいですね。
まぁ、頭が悪そうなやり方ですが、基本システム自動化をいじっても結局整数となること、メッセージウィンドウのサイズは気に入っていることから、メッセージウィンドウコモンで座標をずらせばええやん、となりました。

[63]メッセージウィンドウの30~34行目を見ると、

■変数操作:CSelf30[基本表示位置X]=16*CSelf88[座標倍率X(x10)]
■変数操作:CSelf31[基本表示位置Y]=20*CSelf89[座標倍率Y(x10)]
■変数操作:CSelf32[隠し表示位置X]=16*CSelf88[座標倍率X(x10)]
■変数操作:CSelf33[隠し表示位置Y]=28*CSelf89[座標倍率Y(x10)]

と書いてあって、ここで座標を指定しています。
(16*26=416, 16*20=320 となるので、上の画像の座標と一致していますね。)

セルフ変数の意味は簡単に言うと、基本座標は、表示しているときの座標、隠し座標は出現移動・消去移動するときの座標です。
じゃあこの基本表示位置と隠し表示位置を調整すればいいな、と考えました。
加算すればいいか、となって、X座標に+8 します。
なので、こうなります。

■変数操作:CSelf30[基本表示位置X]=16*CSelf88[座標倍率X(x10)]
■変数操作:CSelf30[基本表示位置X]+=8
■変数操作:CSelf31[基本表示位置Y]=20*CSelf89[座標倍率Y(x10)]
■変数操作:CSelf32[隠し表示位置X]=16*CSelf88[座標倍率X(x10)]
■変数操作:CSelf32[隠し表示位置X]+=8
■変数操作:CSelf33[隠し表示位置Y]=28*CSelf89[座標倍率Y(x10)]

これで中心座標X=424 になるはず。



お!ちゃんと中心座標X=424 になってる!
ということでうまくいった!解決~!
解決しなかったら自分でメッセージウィンドウ作っていちいち表示させているところでした。
それでもいいんだけどね。

ちょっと頭の悪い解決方法だけど、今思いつくのはこれくらいなので、これで行きましょう。
もし、メッセージ位置そのものに違和感があったら、コモン「
[63]メッセージウィンドウ」の44, 45 行目を触るとメッセージ位置のX, Y座標をずらすことができます。
それじゃあこの辺で~。

参考URL(コモン「メッセージウィンドウ」の詳しい流れが書いてあります):◆◆◆
PR
Post your Comment
Name:
Title:
Font:
Mail:
URL:
Comment:
Pass: Vodafone絵文字 i-mode絵文字 Ezweb絵文字
プロフィール
HN:
しぇら
性別:
非公開
自己紹介:
一次創作同人サークル「はねうさぎのこや。」の管理人。
絵をかいたり、ゲーム作りや曲作りなんかを楽しんでいる。
QRコード
P R
忍者ブログ [PR]
* Template by TMP