author | nireco |
Sat, 31 Jan 2009 12:33:08 +0200 | |
changeset 443 | 5d1119729f58 |
parent 434 | a8ba81432ddd |
permissions | -rw-r--r-- |
431
c6d7272a164b
rework Network send() code to use NetworkTarget/Node/Group::send classes, add a NetworkMessage class for sending NetworkObject messages, and fix a bug whereby the server's client TCP sockets weren't nonblocking.... I wonder how this has worked before?\!
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
1 |
|
c6d7272a164b
rework Network send() code to use NetworkTarget/Node/Group::send classes, add a NetworkMessage class for sending NetworkObject messages, and fix a bug whereby the server's client TCP sockets weren't nonblocking.... I wonder how this has worked before?\!
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
2 |
#include "Message.hh" |
c6d7272a164b
rework Network send() code to use NetworkTarget/Node/Group::send classes, add a NetworkMessage class for sending NetworkObject messages, and fix a bug whereby the server's client TCP sockets weren't nonblocking.... I wonder how this has worked before?\!
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
3 |
|
432
82b0f4e55a13
add NetworkChannelPacket class, and modify NetworkTarget::send/send_raw signature. Add hard-coded DEBUG_ENABLED define
Tero Marttila <terom@fixme.fi>
parents:
431
diff
changeset
|
4 |
NetworkMessage::NetworkMessage (NetworkObject &obj, NetworkMessageID msg_id) : |
82b0f4e55a13
add NetworkChannelPacket class, and modify NetworkTarget::send/send_raw signature. Add hard-coded DEBUG_ENABLED define
Tero Marttila <terom@fixme.fi>
parents:
431
diff
changeset
|
5 |
NetworkChannelPacket(obj.controller.channel_id) |
82b0f4e55a13
add NetworkChannelPacket class, and modify NetworkTarget::send/send_raw signature. Add hard-coded DEBUG_ENABLED define
Tero Marttila <terom@fixme.fi>
parents:
431
diff
changeset
|
6 |
{ |
431
c6d7272a164b
rework Network send() code to use NetworkTarget/Node/Group::send classes, add a NetworkMessage class for sending NetworkObject messages, and fix a bug whereby the server's client TCP sockets weren't nonblocking.... I wonder how this has worked before?\!
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
7 |
// write the NetworkObject header |
c6d7272a164b
rework Network send() code to use NetworkTarget/Node/Group::send classes, add a NetworkMessage class for sending NetworkObject messages, and fix a bug whereby the server's client TCP sockets weren't nonblocking.... I wonder how this has worked before?\!
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
8 |
write_uint32(obj.obj_id); |
c6d7272a164b
rework Network send() code to use NetworkTarget/Node/Group::send classes, add a NetworkMessage class for sending NetworkObject messages, and fix a bug whereby the server's client TCP sockets weren't nonblocking.... I wonder how this has worked before?\!
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
9 |
write_uint16(msg_id); |
c6d7272a164b
rework Network send() code to use NetworkTarget/Node/Group::send classes, add a NetworkMessage class for sending NetworkObject messages, and fix a bug whereby the server's client TCP sockets weren't nonblocking.... I wonder how this has worked before?\!
Tero Marttila <terom@fixme.fi>
parents:
diff
changeset
|
10 |
} |
434
a8ba81432ddd
move write_object to NetworkMessage, fix player sync, and implement projectile sync
Tero Marttila <terom@fixme.fi>
parents:
432
diff
changeset
|
11 |
|
a8ba81432ddd
move write_object to NetworkMessage, fix player sync, and implement projectile sync
Tero Marttila <terom@fixme.fi>
parents:
432
diff
changeset
|
12 |
void NetworkMessage::write_object (const NetworkObject *obj) { |
a8ba81432ddd
move write_object to NetworkMessage, fix player sync, and implement projectile sync
Tero Marttila <terom@fixme.fi>
parents:
432
diff
changeset
|
13 |
// NULL or obj->obj_id |
a8ba81432ddd
move write_object to NetworkMessage, fix player sync, and implement projectile sync
Tero Marttila <terom@fixme.fi>
parents:
432
diff
changeset
|
14 |
write_uint32(obj ? obj->obj_id : 0); |
a8ba81432ddd
move write_object to NetworkMessage, fix player sync, and implement projectile sync
Tero Marttila <terom@fixme.fi>
parents:
432
diff
changeset
|
15 |
} |