プレイ日記
In Japan rajimaru
SPCOLOR OUT ってありますよね? それで座標(200,120)のを知りたいのですがどうすれば取得できますか?
2そうだね
プレイ済み
返信[1]
親投稿
ほしけん Hosiken
もしかして今必要としているのは、スプライト用の SPCOLOR OUT じゃなくて、グラフィック用の GSPOIT じゃないでしょうか。 そうでしたら、GSPOIT(200,120) でとることができます。
1そうだね
プレイ済み
返信[2]
親投稿
In Japan rajimaru
READの件に続きどうもありがとうございます! 実はこれSPをむ マップ化したものなのです。 ほしけんさんの言うG…のSPバージョンを探しています…!
1そうだね
プレイ済み
返信[3]
親投稿
GRPは1ドット単位で書いたり消したり確認したりできるけど、SPの単位は1"個"なんだよね… 確認するのも"個"単位になるよね
0そうだね
プレイ済み
返信[4]
親投稿
1.その座標に何番のSPがあるか調べる(当たり判定等応用) 2.そのSPのCOLORを調べる この手順でお望みの値が取れるかわかりませんが…
0そうだね
プレイ済み
返信[5]
親投稿
otta777 otta777a
SPHITRC関数で任意の座標にあるスプライトの管理番号が取得できます。 その管理番号のスプライトの表示色を取得って事でしたら下記の方法で できます。 対象となるスプライトはSPCOLを指定して下さい。 SP=SPHITRC(200,120,1,1) IF SP!=FALSE THEN CO=SPCOLOR(SP)
1そうだね
プレイ済み
返信[6]
親投稿
ツララ LongIceSword
ほしけんさんの例をスプライトでやるなら、GPAGEで操作グラフィック画面をSPの絵を置いてある面に指定した後で、SPDEFで定義された調べたいスプライトの定義番号の絵が書かれている所に座標系を合わせて、GSPOITしてやればいいんじゃないですか?
1そうだね
プレイ済み
返信[7]
親投稿
In Japan rajimaru
otta777さん> 写真の通りエラーがでるのですが、SPCOLに何か問題があるのでしょうか? ツララさん> よくわからないので熟考します!
0そうだね
プレイ済み
返信[8]
親投稿
otta777 otta777a
済みません、81行目の条件を間違えてしまいました。 IF SP!=FALSE THEN ~をIF SP!=-1 THEN ~に変更して下さい。 81行目と82行目を入れ替えて下さい。 変数SPに衝突判定の結果を取得してその結果が-1で無い場合に SPCOLOR関数でSPの表示色を取得します。
0そうだね
プレイ済み
返信[9]
親投稿
ツララ LongIceSword
>In Japanさん 画面上の座標からSP上のドットの座標はSPOFSとSPHOMEから割り出せますよね。 SPの定義番号からSPの絵を置いてあるグラフィックページでの座標も割り出せますよね。 なので座標系の合わせ方さえ分かれば、GSPOITが使えるんじゃないかと。 SPDEFがデフォルトの状態だと、最初の方は16×16のサイズのSPがズラッと並んでるので、X座標は(定義番号 MOD 32)×16、Y座標は(定義番号 DIV 32)×16がSPの左上端の座標になるはず、なのでSPHOMEで基準点を変更していないSPだと、例えばSPSET 0,0、SPOFS 0,2,3で画面上で(7,9)の点のSPをGSPOITするとX=(0 MOD 32)*16:Y=(0 DIV 32)*16:GPAGE 0,4:C=GSPOIT(X+(7-2),Y+(9-3))みたいな感じで可能かと。
0そうだね
プレイ済み
返信[10]
親投稿
In Japan rajimaru
何故わからないのか? と思われてるかもしれませんが本当にわかりません… 一番上の公開キーです。よろしくお願いします…
0そうだね
プレイ済み
返信[11]
親投稿
otta777 otta777a
107行目 GPAGE 0,4:CJ=GSPOIT(400-RA,240-UA) こういうことですか?
0そうだね
プレイ済み
返信[12]
親投稿
In Japan rajimaru
対応遅れてすみません。 otta..さん» できました!どうもありがとうございました! 両者様»最後まで教えれくださり、ありがとうございました。必ずしも今後に役立てていきます。
1そうだね
プレイ済み