HSPでソケットサーバー
メイン処理だけ。
E3Dのモーション再生サンプルにソケットサーバーサンプルを合体
なんかパケットが来たらモーションを再生。とりあえず動いている
赤と白の旗を持たせて、両方を上げ下げするモーションを作れば、
遠隔で旗揚げゲームができそう
ソケット関係の関数のリファレンスは
ここが参考になりました
http://usk.s16.xrea.com/hsp/hsphelp_eng/hsp26_eng/docs/hspsock.txt
HSP3の文法が独特なので慣れるまで違和感があります(^^;
*main E3DSetNewPose hsid1, frameno0 E3DGetKeyboardState keybuf if keybuf.'Z' = 1 : E3DSetMotionKind hsid1, mk1_move if keybuf.VK_ESCAPE = 1 : goto *bye ; [ESC]で終了 E3DChkInView scid1, hsid0 E3DChkInView scid1, hsid1 E3DChkInView scid1, hsid2 E3DBeginScene scid1 ;不透明部分の描画をする E3DRender scid1, hsid0, 0, frameno0, 0 E3DRender scid1, hsid2, 0, frameno0, 0 E3DRender scid1, hsid1, 0, frameno0, 0 E3DEndScene E3DPresent scid1 waitbyfps 100, chkfps1 if flag=0 { sopen(999) flag=1 E3DSetMotionKind hsid1, mk1_move } res = 0 res = srecv() if res != 0 : E3DSetMotionKind hsid1, mk1_move goto *main
srecvは
#defcfunc srecv sockcheck 0 if stat>=2 : goto *errbye res=0 if stat=0 { sockgetc res,0 if stat>=1 : goto *errbye } return res
sockcheckでパケットが来ているか?をチェックして、来てたらgetcする