HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
0827
おぼOBAQのアプリのお手本のスクリプトの指南願います。27解決


おぼ

リンク

2017/8/27(Sun) 17:42:56|NO.81140

すいません。おぼです。

ありさんに

#include "obaq.as" pos 500, 30 button gosub "Go", *start : btnid = stat ; Goボタンの設置 *setting qreset ; OBAQ初期化 qaddpoly ball, 20, 80.0, 20.0, 0.0, 5.0, 5.0, 1, 1 ; ボール(20角形)作成 qtype ball, type_bind, 0 ; ボール位置を一時固定 qaddpoly goal, 4, 80.0, 100.0, 0.0, 20.0, 5.0, 1, 2 ; ゴール(4角形)設置 qtype goal, type_bind, 0 ; 位置を固定 qgroup ball, 1, 0, 2 ; ボールにqcollisionでコリジョン(当たり判定)を受け取るグループを設定 qaddpoly block1, 4, 120.0, 30.0, 0.0, 10.0, 10.0, 1, 4 ; 移動ブロック(4角形)の設置 qinertia block1, , 0.0 ; ブロックを落下しないように設定 qaddpoly block2, 3, 70.0, 60.0, 45.0, 10.0, 10.0, 1, 4 ; 邪魔ブロック(3角形)の設置 qtype block2, type_bind, 0 ; *main redraw 0 color 0, 0, 0 : boxf ; 画面のクリア qexec ; OBAQの動的処理は基本的にqexecからqdrawの間に記述する qspeed block1, 0.0, 0.0, 0.0, 2 ; 方向キーを離すと止まる stick key, 15 if key & 1 : qspeed block1, -0.1, 0.0, 0.0, 2 ; 方向キーでブロックを上下に移動 if key & 2 : qspeed block1, 0.0, -0.1, 0.0, 2 if key & 4 : qspeed block1, 0.1, 0.0, 0.0, 2 if key & 8 : qspeed block1, 0.0, 0.1, 0.0, 2 qcollision ball ; ボールに設定したコリジョングループの判定取得開始 qgetcol hitchk, hitx, hixy ; コリジョングループ内の判定を取得(hitchkに接触したオブジェクトIDが入る) if hitchk = goal : dialog "GOAL" :end ; ゴールにボールが触ったら終了 qdraw redraw 1 await 16 goto *main *start qtype ball, type_bind, 2 ; Goボタンを押すとボールを落とす return
というのを教えてもらったのですが、hsp3dish.asにobaq.asの機能が含まれているはずなので、
#include "hsp3dish.as"

としても動くはずなので、試しに書き換えてみました。

すると、動きませんでした。どこがまずかったのでしょうか?

よろしくご教授願います。



この記事に返信する


暇人

リンク

2017/8/27(Sun) 19:07:41|NO.81143

動かないって?
たんにウィンドウサイズが小さくてオブジェクトが見えないだけじゃないの?



おぼ

リンク

2017/8/27(Sun) 19:28:22|NO.81144

回答くださりありがとうございます。おぼです。
>暇人さん
hspdish.asにすると画面が小さくなるのでその路線も考えたのですが、F5で起動させると移動ブロックが動くと思い方向キーを押したのですがまったく見えてきませんでした。サイズもobjsize 1200,600とか入れてみたのですが変化ありませんでした。

どなたか良い案があればよろしくご教授願います。



暇人

リンク

2017/8/27(Sun) 20:00:13|NO.81146

>すが、F5で起動させると移動ブロックが動くと思い方向キーを押したのですがまったく見えてきませんでした。サイズもobjsize 1200,600とか入れてみたのですが変化ありませんでした。
それは画面外に作られてオブジェクトが追加されなかったんだろう
ウィンドウを大きくすれば良いだけ

screen 0,800,600
通常の縦長の小さいサイズでやりたいなら
qaddpolyの
x(0.0) : 配置X座標(実数)
y(0.0) : 配置Y座標(実数)
の数値を小さいウィンドウに合わせて変えれば良い



おぼ

リンク

2017/8/27(Sun) 20:37:51|NO.81147

>暇人さん
おぼです。


#include "obaq.as" screen 0, 800, 600 pos 500, 30 button gosub "Go", *start : btnid = stat ; Goボタンの設置 *setting
とすると、obaq.asでは大きくなりましたが、hsp3dish.asでは大きさが固定されているのか変化ありませんでした。


qaddpolyの x(0.0) : 配置X座標(実数) y(0.0) : 配置Y座標(実数)
は該当箇所がわからなかったので(検索もしました)試していません。

DishのSampleも見ましたが、良晏が浮かびませんでした。

よろしくお願いいたします。



暇人

リンク

2017/8/27(Sun) 20:44:15|NO.81148

あぁ、hsp3dishはhsp3dish.iniの設定に左右される
hsp3dishサンプルフォルダにhsp3dish.iniがあるから
現在のソースフォルダにコピペして
wx=320
wy=480
の所を編集(obaqのサンプルフォルダにあるのは800*600になってる)

>は該当箇所がわからなかったので(検索もしました)試していません。
ヘルプ見てないの?



暇人

リンク

2017/8/27(Sun) 21:05:02|NO.81149

因みにヘルプの使い方は F1 を押せばヘルプが起動される
入力カーソルが命令等にあれば、その命令が検索される



おぼ

リンク

2017/8/30(Wed) 20:38:13|NO.81186

回答ありがとうございます。おぼです。

>暇人さん

意味が分かりました。ありがとうございました。Dishはこういう風ぬなっていたのか。と思いました。



ONION software Copyright 1997-2023(c) All rights reserved.