読者です 読者をやめる 読者になる 読者になる

SADOLOG

lonely and gloomy and lazy sado's blog

Sado's website is here DOSSADOSA!!!
御用の方は空白の記事

あああああ

もう日曜のam3時かよ
まじ作り終わりません
作業やばい
やばいようわぁぁぁぁぁぁ


「「「〜完〜」」」

hspdxで16:9フルスク

DX7の知識なんてこれっぽっちも持ってない
うんこプログラマの備忘録


http://hsp.tv/play/pforum.php?mode=pastwch&num=53564
たぶん16:9でフルスクするには1280x720以上の
特定の画素数でないと初期化出来ないっぽい
4:3も640x480でないとできないっぽいし?


//HSP3 + HSPDX
#include "hspdx.as"
#const winx 640
#const winy 360
#const windowx 1280
#const windowy 720

//ウィンドウ初期化
es_ini
screen 0,windowx,windowy,2
title "test a test"
WindowMode = 0
es_screen windowx,windowy,32,,WindowMode,1
;メイン画面スケーリング用
buffer 1,winx,winy
es_buffer 0
gsel 0

//スケーリング
gmode 0:pos 0,0
es_exboxf 0,0,winx,winy,$0000FF,,,,ESB_ONE,,,,
es_xfer 0,-2,0,0,winx,winy
es_zoom 0,0,0,winx,winy,windowx,windowy

es_sync

EMER内部仕様

[2016/3/14までの内部仕様]
[ネタバレや攻略情報なし]
module型変数使えとか言わないで
まだ何も知らない鼻垂れ小僧の時(一年前)に組んだプログラムだから


■描画順

背景・背景オブジェクト(演出用)
キャラクター(敵や動く何か)
自機
自機弾・敵弾
エフェクト(爆発や閃光,火花など)
UIなど

■変数管理(すべて配列変数で管理)
obj~ 自機(0)も含むキャラクター全部
bgobj~ 背景で動かしたいキャラクター等
blt~ 敵弾専用
pcblt~ 自機弾専用
ptcl~ エフェクト用
各変数の主要な接尾辞
なし 存在の有無・キャラクタID
pos 座標
postg (内部処理用)
sp 移動速度
hit 矩形当たり判定の大きさ
rad 角度
;
rel 紐付け用(多関節キャラなど)
atflg 当たり判定の例外処理用
stat
ptn
ptntime
intvl 射撃間隔cnt
hp
score
indmg 無敵時間
;
layer 描画順(制約多め)
zm 表示倍率(1.0)
tilt
aftb 噴射炎の状態
;
anifl 一コマの最大フレーム数
aniflcnt
anipg 最大コマ数
anipgcnt
上記の命名規則に当てはまらないものの代表
blt,bltg 弾丸のみ行動IDと画像IDとで分ける
bgsc 要素数,2,3
bgsc(層,タイル,(0:imgID/1:描画処理分岐/2:alpha値))

当たり判定を保持する変数は
~hit(例えばdim objhit,要素数,2)のみなので、
一つの矩形情報しか保持できない。
なので、~atflgに任意の数値を代入しておき、
判定時に予め作っておいた例外処理を実効する。超非効率。