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


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0818
T.TT-EG-Script Ver 2.0 公開します!15解決


T.T

リンク

2014/8/18(Mon) 18:15:39|NO.63941

お久しぶりです。T.Tです。
HSPでスクリプト言語っぽいプログラミングツールを作りました。
前バージョンとはとは全くの別物です。
基本的にはVBSみたいなものです。

http://ttnohp.web.fc2.com/teg.html
インストーラー版とアーカイブ版を用意しました。アーカイブ版は関連付けはされません。

全バージョンとの違い、新要素
・システム根本(コレ重要)
・大文字と小文字、複数パラメータに対応
・結局、変数みたいなものを実装。
・VBScriptの呼び出しと、命令定義の実装により、COMオブジェクトが呼び出し可能に。
・モジュールが作れるようになった。↑
・Editorを強化。
ヘルプも一新したので、読みやすくなってると思います。

最後に募集です。
今回、エディタもアップデートしましたが、僕はエディタを作るのが苦手(?)で、
エディタのバグ取りに夢中になった前バージョンみたいになるので、
エディタを作ってくれる人を募集します。大規模になると怖いので1〜2人ぐらいで結構です。
興味があったら詳細をお知らせするので、
tt.koukaiyou@gmail.com
までどうぞ。よろしくお願いします。m(_ _)m



この記事に返信する


GOMEKIT!

リンク

2014/8/18(Mon) 19:36:21|NO.63946

<感想>
ツールバーの一新や色分けが施され外観としては見栄えの良いエディタに生まれ変わった。
<不具合>
・エディタにスペースを入れると□が表記される
・サンプルのcharcode.tesでエラーが発生する
・エディタ上のショートカットメニューが無い
<要望>
・保存を促すメッセージダイアログににキャンセルを付けて欲しい



ぴょぴょ

リンク

2014/8/18(Mon) 20:05:57|NO.63949

まだダウンロードしてませんが、ホームページによると完全無料となってますね。
これって自作ソフトに組み込めるわけ?

例えばRPGのイベント・ファイルに使えるとか。
サイドバー・ランチャーの機能拡張として使えるとか。

出来るの?



T.T

リンク

2014/8/18(Mon) 22:25:04|NO.63956

>GOMEKIT!さん
>>エディタにスペースを入れると□が表記される
仕様です。HSPスクリプトエディタも同様の設定に出来たはずです。
初心者には半角と全角セペースの区別がついたほうがいいかと...
>>サンプルのcharcode.tesでエラーが発生する
修正したはずでしたが、アーカイブ版は未修正でした。修正しました。
>>エディタ上のショートカットメニューが無い
ショートカットメニューって初めて聞いたのですが教えてください(T_T)
>ぴょぴょさん
公開しているものではできませんが連絡いてだければモジュールとして提供できます。
RPGのイベントファイルには無理ですが、
サイドバー・ランチャーの機能拡張ならお役に立てるかもしれません。



ヒラギノ

リンク

2014/8/18(Mon) 22:49:55|NO.63957

タブで複数表示できたらいいと思います。。。



cats

リンク

2014/8/18(Mon) 23:23:06|NO.63958

文法がかなり厳しいですね。
せめて命令中のスペースは許してください。
それから何のために作った言語なのかを是非教えてください。
例えばFortranは計算、HSPならゲームというように。
あと、オープンソースソフトウェアと書いてあるのに再頒布は自由でないのですか。
それではただのソースコード公開では?(私の知識不足?)



T.T

リンク

2014/8/19(Tue) 07:10:26|NO.63965

>ヒラギノさん
僕の技術では無理ですかね...Hostがメインなので...

>catsさん
命令中のスペースとはどんな状況でしょうか?
基本てきには、
・半角スペースとTABをふくむ命令は定義できない
・命令の前にはTABを入れることができる。
ですね。文法厳しいです。

僕的には、Windows標準のVBSやBATJSCRIPTなどを簡略化して、
簡単にPC上での動作を自動化できるようにと作りました。。。



GOMEKIT!

リンク

2014/8/19(Tue) 07:29:43|NO.63966

>ショートカットメニューって初めて聞いたのですが教えてください(T_T)
右クリックで切り取りや貼り付けが容易に行える。(http://kie.nu/266R)



T.T

リンク

2014/8/19(Tue) 08:31:46|NO.63967

>catsさん
すみません。オープンソースについての話の返信を忘れていました。
改良、改善を目的とした再配布は可能です。
連絡してもらえられば改造してもいいですし...無許可はダメってことですね。
>GOMEKITI!さん
それのことでしたか...僕の技術では無理ですかね...
WinAPIとかよくわからないので...



ぴょぴょ

リンク

2014/8/19(Tue) 10:06:02|NO.63969

> WinAPIとかよくわからないので...
HSPには mod_menu.as がります。
この mod_menu.as を覗くと newmenu、addmenu、applymenu の3つのユーザー定義命令があります。
さらに Win32API が使われてます。

Win32API は次のサイトを参考にお勉強して見るのはどうでしょう。
http://wisdom.sakura.ne.jp/system/winapi/win32/index.html

ここの76〜82番がメニューに関係します。
どうぞ。



T.T

リンク

2014/8/19(Tue) 12:43:38|NO.63977

>ぴょぴょさん
メニューバーではなく、右クリックメニュー作成についての資料ありますかね〜?



ぴょぴょ

リンク

2014/8/19(Tue) 17:24:06|NO.63990

> メニューバーではなく、右クリックメニュー作成についての資料ありますかね〜?
mod_menu.as の newmenu、addmenu、applymenu でメニュー・ハンドルを作成します。
その後に TrackPopupMenu で右メニューを表示します。

http://msdn.microsoft.com/ja-jp/library/cc364838.aspx

これを参考に。



ぴょぴょ

リンク

2014/8/19(Tue) 17:31:37|NO.63992

TrackPopupMenu を使わなくても newmenu で引数2に 1 を指定するとポップアップが出せるみたい。



ぴょぴょ

リンク

2014/8/19(Tue) 17:52:26|NO.63993

サンプルを作ってみました。
#include "mod_menu.as"
//-------------------------------------- // Win32API関数の呼び出し定義 //-------------------------------------- #uselib "User32.dll" #func TrackPopupMenu "TrackPopupMenu" sptr,sptr,sptr,sptr,sptr,sptr,sptr # #const TPM_RECURSE $00000001 #const TPM_LEFTBUTTON $00000000 #const TPM_RIGHTBUTTON $00000002 # #const TPM_LEFTALIGN $00000000 #const TPM_CENTERALIGN $00000004 #const TPM_RIGHTALIGN $00000008 # #const TPM_TOPALIGN $00000000 #const TPM_VCENTERALIGN $00000010 #const TPM_BOTTOMALIGN $00000020 # #const TPM_HORIZONTAL $00000000 #const TPM_VERTICAL $00000040 # #const TPM_NONOTIFY $00000080 #const TPM_RETURNCMD $00000100 #const TPM_HORPOSANIMATION $00000400 #const TPM_HORNEGANIMATION $00000800 #const TPM_VERPOSANIMATION $00001000 #const TPM_VERNEGANIMATION $00002000 #const TPM_NOANIMATION $00004000 //-------------------------------------- // 列挙定数(メニューID) //-------------------------------------- #enum MID_1=40000 #enum MID_2 #enum MID_3 #enum MID_4 //-------------------------------------- // メイン部 //-------------------------------------- *Main ;メニュー・ハンドルの作成 dim hMenu newmenu hMenu,1 addmenu hMenu,"メニュー1",MID_1 addmenu hMenu,"メニュー2",MID_2 addmenu hMenu,"メニュー3",MID_3 addmenu hMenu,"メニュー4",MID_4 ;ポップアップ・メニューの表示 x=mouseX y=mouseY n=(TPM_LEFTALIGN|TPM_TOPALIGN|TPM_NONOTIFY|TPM_RETURNCMD) TrackPopupMenu hMenu,n,x,y,0,hWnd,0 ;選択されたメニュー項目の分岐 switch stat case MID_1: mes "MID_1":swbreak case MID_2: mes "MID_2":swbreak case MID_3: mes "MID_3":swbreak case MID_4: mes "MID_4":swbreak default: mes "キャンセルされました。":swbreak swend stop



ぴょぴょ

リンク

2014/8/19(Tue) 18:20:27|NO.63994

訂正。

> x=mouseX
> y=mouseY

x=ginfo_mx
y=ginfo_my

スクリーン座標を指定しないといけないので ginfo_mx、ginfo_my にして下さい。



cmoritoshi

リンク

2014/8/19(Tue) 20:16:44|NO.64017

こんにちは。
このモジュールを使えば
winAPI使わずに簡単にメニューが作れますよ。
(その分機能も少ないですけど)


#include "rclk_menu.as" oncmd gosub *onjump, 0x007B a=0 :b="" objsize 320,240 listbox a , 0 , "aaa\nbbb\nccc" button "test",*main inirmenu 1,3,10 setrmenu 0," リストボックスが\n 右クリックされました。\n" setrmenu 1," ボタンが\n 右クリックされました。" setrmenu 2," メニュー1\n メニュー2\n メニュー3\n メニュー4\n 終了" *main stop *onjump if (lParam & 0xFFFF)-(ginfo(4)+(ginfo(10)-ginfo(12))/2)>=320 :menu=2 :else { if ((lParam >> 16) & 0xFFFF)-(ginfo(5)+(ginfo(11)-ginfo(13))-((ginfo(10)-ginfo(12))/2))<=240 :menu=0 if ((lParam >> 16) & 0xFFFF)-(ginfo(5)+(ginfo(11)-ginfo(13))-((ginfo(10)-ginfo(12))/2))>240 :menu=1 } if menu=0 { if a=0 :rmenuitem 0,2," aaa" if a=1 :rmenuitem 0,2," bbb" if a=2 :rmenuitem 0,2," ccc" } rmenu2 menu,result if menu=2 & result=4 :end title "メニュー "+menu+" の項目 "+result+" が選択されました。" return

ちょっと急きょ作ったのでいろいろひどいですが、使えると思います。
rclk_menuはこちらから
http://ctoshi.client.jp/download.html

なんか宣伝じみててすみません。笑



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