-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
58cf063
commit cd7985e
Showing
18 changed files
with
1,241 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,139 @@ | ||
package main | ||
|
||
import ( | ||
"fmt" | ||
"github.com/golang/protobuf/proto" | ||
"io" | ||
"net" | ||
"time" | ||
pMsg "wukong/mmo/pb/msg" | ||
wkNet "wukong/net" | ||
) | ||
|
||
func main() { | ||
|
||
fmt.Println("--------------> 陆离频道 <--------------") | ||
time.Sleep(1 + time.Second) | ||
|
||
conn, err := net.Dial("tcp", "127.0.0.1:9527") | ||
if err != nil { | ||
fmt.Println("client start err exit! ") | ||
return | ||
} | ||
|
||
for i := 0; i < 2; i++ { | ||
dp := wkNet.NewDataPack() | ||
//binaryMsg, err := dp.Pack(wkNet.NewMessage(0, []byte("LiuLiGamesV0.9 client0 Test Message "))) | ||
//if err != nil { | ||
// fmt.Println("Pack error", err) | ||
//} | ||
// | ||
//if _, err := conn.Write(binaryMsg); err != nil { | ||
// fmt.Println("conn Write error", err) | ||
// return | ||
//} | ||
|
||
binaryHead := make([]byte, dp.GetHeadLen()) | ||
if _, err := io.ReadFull(conn, binaryHead); err != nil { | ||
fmt.Println("read head error", err) | ||
return | ||
} | ||
|
||
msgHead, err := dp.Unpack(binaryHead) | ||
if err != nil { | ||
fmt.Println("client unpack msgHead error", err) | ||
break | ||
} | ||
|
||
if msgHead.GetMsgLen() > 0 { | ||
msg := msgHead.(*wkNet.Message) | ||
msg.SetData(make([]byte, msg.GetMsgLen())) | ||
|
||
if _, err := io.ReadFull(conn, msg.Data); err != nil { | ||
fmt.Println("read msg data error", err) | ||
return | ||
} | ||
|
||
data := &pMsg.SyncPid{} | ||
err := proto.Unmarshal(msg.Data, data) | ||
if err != nil { | ||
fmt.Println("Unmarshal msg data error", err) | ||
return | ||
} | ||
|
||
fmt.Println("-----> Recv Server msgId= ", | ||
msg.Id, " len= ", msg.MsgLen, " data = ", data) | ||
} | ||
|
||
time.Sleep(1 * time.Second) | ||
} | ||
fmt.Println("-----> stop for") | ||
|
||
for { | ||
|
||
time.Sleep(5 * time.Second) | ||
|
||
fmt.Println("-----> start talk") | ||
|
||
talk(conn,"我是你爸爸~") | ||
} | ||
|
||
|
||
} | ||
|
||
func talk(conn net.Conn,content string) { | ||
|
||
data := &pMsg.Talk{ | ||
Content: content, | ||
Name: "陆离", | ||
} | ||
|
||
marshalMsg, err := proto.Marshal(data) | ||
if err != nil { | ||
fmt.Println("Marshal msg err :", err) | ||
return | ||
} | ||
|
||
dp := wkNet.NewDataPack() | ||
binaryMsg, err := dp.Pack(wkNet.NewMessage(2, marshalMsg)) | ||
if err != nil { | ||
fmt.Println("Pack error", err) | ||
} | ||
|
||
if _, err := conn.Write(binaryMsg); err != nil { | ||
fmt.Println("conn Write error", err) | ||
return | ||
} | ||
|
||
binaryHead := make([]byte, dp.GetHeadLen()) | ||
if _, err := io.ReadFull(conn, binaryHead); err != nil { | ||
fmt.Println("read head error", err) | ||
return | ||
} | ||
|
||
msgHead, err := dp.Unpack(binaryHead) | ||
if err != nil { | ||
fmt.Println("client unpack msgHead error", err) | ||
return | ||
} | ||
|
||
if msgHead.GetMsgLen() > 0 { | ||
msg := msgHead.(*wkNet.Message) | ||
msg.SetData(make([]byte, msg.GetMsgLen())) | ||
|
||
if _, err := io.ReadFull(conn, msg.Data); err != nil { | ||
fmt.Println("read msg data error", err) | ||
return | ||
} | ||
|
||
data := &pMsg.BroadCast{} | ||
err := proto.Unmarshal(msg.Data, data) | ||
if err != nil { | ||
fmt.Println("Unmarshal msg data error", err) | ||
return | ||
} | ||
|
||
fmt.Println("-----> Recv Server msgId= ", | ||
msg.Id, " len= ", msg.MsgLen, " data = ", data) | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,137 @@ | ||
package main | ||
|
||
import ( | ||
"fmt" | ||
"github.com/golang/protobuf/proto" | ||
"io" | ||
"net" | ||
"time" | ||
pMsg "wukong/mmo/pb/msg" | ||
wkNet "wukong/net" | ||
) | ||
|
||
func main() { | ||
|
||
fmt.Println("--------------> 陆真人频道 <--------------") | ||
time.Sleep(1 + time.Second) | ||
|
||
conn, err := net.Dial("tcp", "127.0.0.1:9527") | ||
if err != nil { | ||
fmt.Println("client start err exit! ") | ||
return | ||
} | ||
|
||
for i := 0; i < 2; i++ { | ||
dp := wkNet.NewDataPack() | ||
//binaryMsg, err := dp.Pack(wkNet.NewMessage(0, []byte("LiuLiGamesV0.9 client0 Test Message "))) | ||
//if err != nil { | ||
// fmt.Println("Pack error", err) | ||
//} | ||
// | ||
//if _, err := conn.Write(binaryMsg); err != nil { | ||
// fmt.Println("conn Write error", err) | ||
// return | ||
//} | ||
|
||
binaryHead := make([]byte, dp.GetHeadLen()) | ||
if _, err := io.ReadFull(conn, binaryHead); err != nil { | ||
fmt.Println("read head error", err) | ||
return | ||
} | ||
|
||
msgHead, err := dp.Unpack(binaryHead) | ||
if err != nil { | ||
fmt.Println("client unpack msgHead error", err) | ||
break | ||
} | ||
|
||
if msgHead.GetMsgLen() > 0 { | ||
msg := msgHead.(*wkNet.Message) | ||
msg.SetData(make([]byte, msg.GetMsgLen())) | ||
|
||
if _, err := io.ReadFull(conn, msg.Data); err != nil { | ||
fmt.Println("read msg data error", err) | ||
return | ||
} | ||
|
||
data := &pMsg.SyncPid{} | ||
err := proto.Unmarshal(msg.Data, data) | ||
if err != nil { | ||
fmt.Println("Unmarshal msg data error", err) | ||
return | ||
} | ||
|
||
fmt.Println("-----> Recv Server msgId= ", | ||
msg.Id, " len= ", msg.MsgLen, " data = ", data) | ||
} | ||
|
||
time.Sleep(1 * time.Second) | ||
} | ||
|
||
fmt.Println("-----> stop for") | ||
for { | ||
|
||
time.Sleep(6 * time.Second) | ||
|
||
fmt.Println("-----> start talk") | ||
|
||
talk1(conn, "我嫩爹!!!") | ||
} | ||
} | ||
|
||
func talk1(conn net.Conn, content string) { | ||
|
||
data := &pMsg.Talk{ | ||
Content: content, | ||
Name: "陆真人", | ||
} | ||
|
||
marshalMsg, err := proto.Marshal(data) | ||
if err != nil { | ||
fmt.Println("Marshal msg err :", err) | ||
return | ||
} | ||
|
||
dp := wkNet.NewDataPack() | ||
binaryMsg, err := dp.Pack(wkNet.NewMessage(2, marshalMsg)) | ||
if err != nil { | ||
fmt.Println("Pack error", err) | ||
} | ||
|
||
if _, err := conn.Write(binaryMsg); err != nil { | ||
fmt.Println("conn Write error", err) | ||
return | ||
} | ||
|
||
binaryHead := make([]byte, dp.GetHeadLen()) | ||
if _, err := io.ReadFull(conn, binaryHead); err != nil { | ||
fmt.Println("read head error", err) | ||
return | ||
} | ||
|
||
msgHead, err := dp.Unpack(binaryHead) | ||
if err != nil { | ||
fmt.Println("client unpack msgHead error", err) | ||
return | ||
} | ||
|
||
if msgHead.GetMsgLen() > 0 { | ||
msg := msgHead.(*wkNet.Message) | ||
msg.SetData(make([]byte, msg.GetMsgLen())) | ||
|
||
if _, err := io.ReadFull(conn, msg.Data); err != nil { | ||
fmt.Println("read msg data error", err) | ||
return | ||
} | ||
|
||
data := &pMsg.BroadCast{} | ||
err := proto.Unmarshal(msg.Data, data) | ||
if err != nil { | ||
fmt.Println("Unmarshal msg data error", err) | ||
return | ||
} | ||
|
||
fmt.Println("-----> Recv Server msgId= ", | ||
msg.Id, " len= ", msg.MsgLen, " data = ", data) | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
package api | ||
|
||
import ( | ||
"fmt" | ||
"github.com/golang/protobuf/proto" | ||
"wukong/iface" | ||
"wukong/mmo/core" | ||
"wukong/mmo/pb/msg" | ||
"wukong/net" | ||
) | ||
|
||
type WorldChatApi struct { | ||
net.BaseRouter | ||
} | ||
|
||
func (wc WorldChatApi) Handle(request iface.IRequest) { | ||
protoMag := &msg.Talk{} | ||
err := proto.Unmarshal(request.GetData(), protoMag) | ||
if err != nil { | ||
fmt.Println("talk Unmarshal error : ", err) | ||
return | ||
} | ||
|
||
pId, err := request.GetConnection().GetProperty("PId") | ||
if err != nil { | ||
fmt.Println("get Property PId error : ", err) | ||
return | ||
} | ||
|
||
player := core.WorldManagerObj.GetPlayerByPId(pId.(int32)) | ||
|
||
player.Talk(fmt.Sprintf("玩家 [%s] : %s", protoMag.Name, protoMag.Content)) | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
name: "MMO Games" | ||
Host: "0.0.0.0" | ||
TcpPort: 9527 | ||
MaxConn: 3000 | ||
WorkerPoolSize: 10 |
Oops, something went wrong.