HSP

HSPに投稿されたコード一覧

モジュール変数を別の変数へ移動させる

インスタンスを移動させるためのモジュールとサンプルです。 ランタイムの管理から外れるので、丁寧に扱ってください。
インスタンスを移動させるためのモジュールとサンプルです。 ランタイムの管理から外れるので、丁寧に扱ってください。
	//自由に使ってください。tds12
	#module m a
	#modinit int _a
		a = _a
	return
コードを見る

【HSP3】strrep命令を入れ子(ネスト)にすると、意図した動作をしない

バグではなくて、仕様なのかもしれませんが。。。hsp3.5 beta2 にて確認。
バグではなくて、仕様なのかもしれませんが。。。hsp3.5 beta2 にて確認。
#module _Mod_HTML_
// 指定された文字列のHTMLエスケープを行います
#defcfunc escapeHtml str html, \
	local tmp
;
コードを見る
  • hk1v
  • 2015/11/28 12:23
  • タグ:
  • タグはありません

変数引数に値を渡す

リテラルのポインタを得る関数があればコピーなしで運べるのに。
リテラルのポインタを得る関数があればコピーなしで運べるのに。
#module
// 文字列への参照を作る関数
#define global ctype ref_xs(%1) \
	%t__ref %i0 \
	%p@__ref(ref_xs_@__ref(%1, %p@__ref)) \
コードを見る
  • タグ:
  • タグはありません

二重振り子RK4シミュonHSP(修正版2)

修正版1のRK4で大ポカをやらかしていました…。 (全エネルギーが徐々に減っていたのは誤差なんかじゃなかった…。) 多分これで最後の修正になります。
修正版1のRK4で大ポカをやらかしていました…。 (全エネルギーが徐々に減っていたのは誤差なんかじゃなかった…。) 多分これで最後の修正になります。
#include "hsp3dish.as"
#packopt name "DPRK4"

/* モジュール認識 */
modDetect@mod_simuCfg
コードを見る

二重振り子RK4シミュonHSP(修正版1)

前回のコードのミスを修正しました。 自然な動きになっています。 バックグラウンドが気になる人は↓をどうぞ。 EOM : https://drive.google.com/open?id=0B6dSvF...
前回のコードのミスを修正しました。 自然な動きになっています。 バックグラウンドが気になる人は↓をどうぞ。 EOM : https://drive.google.com/open?id=0B6dSvF...
#packopt name "expt"

*mkwnds
	#define wsizex 800
	#define wsizey 600
コードを見る

【HSP3】DXライブラリのDxDLL.cs(C#)をHSPのasに変換するアレ(手抜き)Ver.3(2015/08/10)

Codetterからコピペする際、空行にゴミが混入するので、削除してから使ってください。(コンパイルエラーになります) 関数と定数が DxLib.as として出力されます。めっちゃ手抜きです。構造体が...
Codetterからコピペする際、空行にゴミが混入するので、削除してから使ってください。(コンパイルエラーになります) 関数と定数が DxLib.as として出力されます。めっちゃ手抜きです。構造体が...
#module
// 指定オフセットから右から検索していき見つけた位置を返す。(1byteのみ)
#defcfunc searchR1 str _in, int ps, int sh
	idx = -1
	in = _in
コードを見る
  • hk1v
  • 2015/8/10 21:54

【HSP3】構造体を戻り値とするDXライブラリの関数をHSPで呼び出すテスト

ConvWorldPosToScreenPos()のような、そのまま構造体で返る関数をHSPで普通に実行するとクラッシュしてしまいます。 元の引数が prm1, prm2, prm3 だった場合は、 ...
ConvWorldPosToScreenPos()のような、そのまま構造体で返る関数をHSPで普通に実行するとクラッシュしてしまいます。 元の引数が prm1, prm2, prm3 だった場合は、 ...
// http://sprocket.babyblue.jp/html/hsp_koneta3.htm
#module
#defcfunc todouble int p1
	temp = 0.0
	lpoke temp, 4, (p1 & 0x80000000) | (((p1 & 0x7fffffff) >> 3) + ((p1 & 0x7fffffff) ! 0) * 0x38000000)
コードを見る

二重振り子RK4シミュonHSP

4次のRunge=Kutta法を用いた二重振り子のシミュレーション。 適当なので精度は保証しません。 ぶらりんこしてる様子を見て楽しむだけです。
4次のRunge=Kutta法を用いた二重振り子のシミュレーション。 適当なので精度は保証しません。 ぶらりんこしてる様子を見て楽しむだけです。
#packopt name "expt"

*mkwnds
	#define wsizex 800
	#define wsizey 600
コードを見る