00001 #include "packet.h"
00002
00003 #include <stdio.h>
00004
00005 void setTimeStamp(packetHeader *header){
00006 header->timeStamp = GetTickCount();
00007 }
00008
00009
00010 void setPacketFrom(packetHeader *header, int id){
00011 header->from = id;
00012 }
00013
00014
00015
00016 packetChatMsg createPacketChatMsg(int playerid, const char *msg){
00017 msgstruct m;
00018 m.playerid = playerid;
00019 packetChatMsg pkt;
00020 pkt.len = strlen(msg);
00021 if(pkt.len>255)
00022 pkt.len = 255;
00023 strncpy(m.msg, msg, pkt.len);
00024 m.msg[pkt.len] = '\0';
00025 pkt.msg = m;
00026 pkt.header.pktLen = sizeof(packetChatMsg);
00027 pkt.header.pktType = PKT_CHAT_MSG;
00028 return(pkt);
00029 }
00030
00031 packetConnect createPacketConnect(int vid){
00032 packetConnect pkt;
00033 pkt.header.pktLen = sizeof(packetConnect);
00034 pkt.header.pktType = PKT_CONNECTION_REQUEST;
00035 pkt.vid = vid;
00036 return(pkt);
00037 }
00038
00039 packetConnectionResponse createPacketConnectionResponse(bool flag){
00040 packetConnectionResponse pkt;
00041 pkt.acceptionFlag = flag;
00042 pkt.header.pktLen = sizeof(packetConnectionResponse);
00043 pkt.header.pktType = PKT_CONNECTION_RESPONSE;
00044 return(pkt);
00045 }
00046
00047 packetPlayerInfo createPacketPlayerInfo(const char name[25], int id){
00048 packetPlayerInfo pkt;
00049 pkt.header.pktLen = sizeof(packetPlayerInfo);
00050 pkt.header.pktType = PKT_PLAYER_INFO;
00051 pkt.id = id;
00052 strcpy(pkt.name, name);
00053 return(pkt);
00054 }
00055
00056 packetRequestAllPlayersInfo createPacketRequestAllPlayersInfo(){
00057 packetRequestAllPlayersInfo pkt;
00058 pkt.header.pktLen = sizeof(packetRequestAllPlayersInfo);
00059 pkt.header.pktType = PKT_REQUEST_PLAYERS;
00060 return(pkt);
00061 }
00062
00063 packetDisconnect createPacketDisconnect(int id){
00064 packetDisconnect pkt;
00065 pkt.header.pktLen = sizeof(packetDisconnect);
00066 pkt.header.pktType = PKT_DISCONNECT;
00067 pkt.id = id;
00068 return(pkt);
00069 }
00070
00071
00072 packetPlayerPosition createPacketPlayerPosition(int id, int rotation, int move, float x, float y, float angle, bool overwriteself){
00073 packetPlayerPosition pkt;
00074 pkt.header.pktLen = sizeof(packetPlayerPosition);
00075 pkt.header.pktType = PKT_PLAYER_POSITION;
00076 pkt.id = id;
00077 pkt.x = x;
00078 pkt.y = y;
00079 pkt.angle = angle;
00080 pkt.overwriteself = overwriteself;
00081 pkt.rotation = rotation;
00082 pkt.move = move;
00083 return(pkt);
00084 }
00085
00086
00087 packetAttack createPacketAttack(int playerid, int type, float x, float y, float z, float dx, float dy, float dz){
00088 packetAttack pkt;
00089 pkt.header.pktLen = sizeof(packetAttack);
00090 pkt.header.pktType = PKT_ATTACK;
00091 pkt.attack = type;
00092 pkt.id = playerid;
00093 pkt.x = x;
00094 pkt.y = y;
00095 pkt.z = z;
00096 pkt.dx = dx;
00097 pkt.dy = dy;
00098 pkt.dz = dz;
00099 return(pkt);
00100 }
00101
00102
00103 packetPlayerState createPacketPlayerState(int id, int state){
00104 packetPlayerState pkt;
00105 pkt.header.pktLen = sizeof(packetPlayerState);
00106 pkt.header.pktType = PKT_PLAYER_STATE;
00107 pkt.id = id;
00108 pkt.state = state;
00109 return(pkt);
00110 }
00111
00112
00113 packetPlayerScore createPacketPlayerScore(int id, int kills, int frags, int deaths){
00114 packetPlayerScore pkt;
00115 pkt.header.pktLen = sizeof(packetPlayerScore);
00116 pkt.header.pktType = PKT_PLAYER_SCORE;
00117 pkt.id = id;
00118 pkt.kills = kills;
00119 pkt.frags = frags;
00120 pkt.deaths = deaths;
00121 return(pkt);
00122 }
00123
00124
00125 packetPlayerAction createPacketPlayerAction(int id, int action){
00126 packetPlayerAction pkt;
00127 pkt.header.pktLen = sizeof(packetPlayerAction);
00128 pkt.header.pktType = PKT_PLAYER_ACTION;
00129 pkt.id = id;
00130 pkt.action = action;
00131 return(pkt);
00132 }
00133
00134
00135 packetPlayerKilled createPacketPlayerKilled(int id, int killer){
00136 packetPlayerKilled pkt;
00137 pkt.header.pktLen = sizeof(packetPlayerKilled);
00138 pkt.header.pktType = PKT_PLAYER_KILLED;
00139 pkt.id = id;
00140 pkt.killer = killer;
00141 return(pkt);
00142 }
00143
00144
00145 packetPlayerExtras createPacketPlayerExtras(int id, int extras, int value){
00146 packetPlayerExtras pkt;
00147 pkt.header.pktLen = sizeof(packetPlayerExtras);
00148 pkt.header.pktType = PKT_PLAYER_EXTRAS;
00149 pkt.extras = extras;
00150 pkt.value = value;
00151 pkt.id = id;
00152 return(pkt);
00153 }
00154
00155
00156 packetDealExtras createPacketDealExtras(int detype, float x, float y, int flag){
00157 packetDealExtras pkt;
00158 pkt.header.pktLen = sizeof(packetDealExtras);
00159 pkt.header.pktType = PKT_DEAL_EXTRAS;
00160 pkt.detype = detype;
00161 pkt.x = x;
00162 pkt.y = y;
00163 pkt.flag = flag;
00164 return(pkt);
00165 }
00166
00167
00168 packetPlayerName createPacketPlayerName(int playerid, const char *name, int flag){
00169 packetPlayerName pkt;
00170 pkt.header.pktLen = sizeof(packetPlayerName);
00171 pkt.header.pktType = PKT_PLAYER_NAME;
00172 pkt.flag = flag;
00173 pkt.id = playerid;
00174 strcpy(pkt.name, name);
00175 return(pkt);
00176 }
00177
00178
00179 packetInfo createPacketInfo(int playerid, int valA, int valB,int valC){
00180 packetInfo pkt;
00181 pkt.header.pktLen = sizeof(packetInfo);
00182 pkt.header.pktType = PKT_INFO;
00183 pkt.id = playerid;
00184 pkt.valA = valA;
00185 pkt.valB = valB;
00186 pkt.valC = valC;
00187 return(pkt);
00188 }