初心者なので突っ込み所満載かもしれませんが
上が蔵、下が鯖です、一応通信はできていて、鯖の処理に合わせて蔵の★が動くようになりました
ですがサンプルをいじくった程度でソケットやポートの概念もイマイチわからないです
sockcheckで待機中固まったりと普通の命令と勝手が違いすぎて・・・(通信系命令の仕様なんですか?)
このソースだと1人分の通信しかできません、大人数の情報を処理する場合の書き方がさっぱり思いつきません
複数の通信の場合はどのように書くんですか?教えてください
#include "hspsock.as"
s=""
sockclose
adr="x.x.x.x":port=999
sockopen 0,adr,port
if stat : dialog "socket error" : goto *bye
repeat
sockcheck 0
if stat!=0 : break
wait 20
loop
repeat
color 255,255,255
boxf
color
getkey hidari,37
getkey ue,38
getkey migi,39
getkey sita,40
n=0
if hidari = 1:n=2
if migi = 1:n=1
if ue = 1:n=3
if sita = 1:n=4
if p = 0:sockputc n:p=1
if p = 1:sockget s,10:p=0
x =int(strmid(s,0,2))
y =int(strmid(s,2,2))
pos x*12,y*12:mes "★"
pos 50,50:mes x
pos 50,70:mes y
redraw 1
redraw 0
await 0
loop
*bye
mes "終了"
sockclose
stop
//--------------
#include "hspsock.as"
MM = "m"
sockclose
port=999
ipget
mes "IPアドレス:"+refstr
mes "ポート"+port+"で接続を待っています..."
sockmake 0,port
if stat : dialog "Socket error": goto *errbye
repeat
sockwait 0
if stat>1 : dialog "Socket error": goto *errbye
if stat=0 : break
wait 20
loop
repeat
s=""
if cn = 30:{
if n=1:x+1
if n=2:x-1
if n=3:y-1
if n=4:y+1
if x < 0:x=0
if x > 20:x=20
if y < 0:y=0
if y > 20:y=20
n=0
w= (x*100+y)+10000
s=str(w)
s=(strmid(s,-1,4))
if p = 0:sockgetc n:p=1
if p = 1:sockput s:p=0
}
cn++
if cn > 30:cn=0
await 1
loop
*errbye
sockclose
mes "終了"
stop