Changeset 42 for trunk/src/game
- Timestamp:
- 11/19/08 13:27:05 (17 years ago)
- Location:
- trunk/src/game
- Files:
-
- 6 modified
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/game/Chat.cpp
r40 r42 215 215 }; 216 216 217 static ChatCommand groupCommandTable[] = 218 { 219 { "leader", SEC_ADMINISTRATOR, &ChatHandler::HandleGroupLeaderCommand, "", NULL }, 220 { "disband", SEC_ADMINISTRATOR, &ChatHandler::HandleGroupDisbandCommand, "", NULL }, 221 { "remove", SEC_ADMINISTRATOR, &ChatHandler::HandleGroupRemoveCommand, "", NULL }, 222 { NULL, 0, NULL, "", NULL } 223 }; 224 217 225 static ChatCommand lookupPlayerCommandTable[] = 218 226 { … … 341 349 { "move", SEC_GAMEMASTER, &ChatHandler::HandleMoveObjectCommand, "", NULL }, 342 350 { "near", SEC_ADMINISTRATOR, &ChatHandler::HandleNearObjectCommand, "", NULL }, 351 { "state", SEC_ADMINISTRATOR, &ChatHandler::HandleObjectStateCommand, "", NULL }, 343 352 { NULL, 0, NULL, "", NULL } 344 353 }; … … 389 398 { "lookup", SEC_ADMINISTRATOR, NULL, "", lookupCommandTable }, 390 399 { "pdump", SEC_ADMINISTRATOR, NULL, "", pdumpCommandTable }, 400 { "group", SEC_ADMINISTRATOR, NULL, "", groupCommandTable }, 391 401 { "guild", SEC_ADMINISTRATOR, NULL, "", guildCommandTable }, 392 402 { "cast", SEC_ADMINISTRATOR, NULL, "", castCommandTable }, … … 1085 1095 return objmgr.GetGameTele(cId); 1086 1096 } 1097 1098 bool ChatHandler::GetPlayerGroupAndGUIDByName(const char* cname, Player* &plr, Group* &group, uint64 &guid, bool offline) 1099 { 1100 plr = NULL; 1101 guid = 0; 1102 1103 if(cname) 1104 { 1105 std::string name = cname; 1106 if(!name.empty()) 1107 { 1108 if(!normalizePlayerName(name)) 1109 { 1110 PSendSysMessage(LANG_PLAYER_NOT_FOUND); 1111 SetSentErrorMessage(true); 1112 return false; 1113 } 1114 1115 plr = objmgr.GetPlayer(name.c_str()); 1116 if(offline) 1117 guid = objmgr.GetPlayerGUIDByName(name.c_str()); 1118 } 1119 } 1120 1121 if(plr) 1122 { 1123 group = plr->GetGroup(); 1124 if(!guid || !offline) 1125 guid = plr->GetGUID(); 1126 } 1127 else 1128 { 1129 if(getSelectedPlayer()) 1130 plr = getSelectedPlayer(); 1131 else 1132 plr = m_session->GetPlayer(); 1133 1134 if(!guid || !offline) 1135 guid = plr->GetGUID(); 1136 group = plr->GetGroup(); 1137 } 1138 1139 return true; 1140 } -
trunk/src/game/Chat.h
r40 r42 240 240 bool HandleMoveObjectCommand(const char* args); 241 241 bool HandleTurnObjectCommand(const char* args); 242 bool HandleObjectStateCommand(const char* args); 242 243 bool HandlePInfoCommand(const char* args); 243 244 bool HandlePLimitCommand(const char* args); … … 314 315 bool HandleAddItemCommand(const char* args); 315 316 bool HandleAddItemSetCommand(const char* args); 317 318 bool HandleGroupLeaderCommand(const char* args); 319 bool HandleGroupDisbandCommand(const char* args); 320 bool HandleGroupRemoveCommand(const char* args); 316 321 317 322 bool HandleGuildCreateCommand(const char* args); … … 394 399 uint32 extractSpellIdFromLink(char* text); 395 400 GameTele const* extractGameTeleFromLink(char* text); 401 bool GetPlayerGroupAndGUIDByName(const char* cname, Player* &plr, Group* &group, uint64 &guid, bool offline = false); 396 402 397 403 GameObject* GetObjectGlobalyWithGuidOrNearWithDbGuid(uint32 lowguid,uint32 entry); -
trunk/src/game/Level1.cpp
r40 r42 123 123 if(!*args) 124 124 return false; 125 char str[1024];125 //char str[1024]; 126 126 //sprintf(str, GetMangosString(LANG_ANNOUNCE_COLOR), m_session->GetPlayer()->GetName(), args); 127 127 sWorld.SendWorldText(LANG_ANNOUNCE_COLOR, m_session->GetPlayer()->GetName(), args); -
trunk/src/game/Level3.cpp
r40 r42 2176 2176 } 2177 2177 2178 bool ChatHandler::HandleObjectStateCommand(const char* args) 2179 { 2180 // number or [name] Shift-click form |color|Hgameobject:go_id|h[name]|h|r 2181 char* cId = extractKeyFromLink((char*)args, "Hgameobject"); 2182 if(!cId) 2183 return false; 2184 2185 uint32 lowguid = atoi(cId); 2186 if(!lowguid) 2187 return false; 2188 2189 GameObject* gobj = NULL; 2190 2191 if(GameObjectData const* goData = objmgr.GetGOData(lowguid)) 2192 gobj = GetObjectGlobalyWithGuidOrNearWithDbGuid(lowguid, goData->id); 2193 2194 if(!gobj) 2195 { 2196 PSendSysMessage(LANG_COMMAND_OBJNOTFOUND, lowguid); 2197 SetSentErrorMessage(true); 2198 return false; 2199 } 2200 2201 char* cstate = strtok(NULL, " "); 2202 if(!cstate) 2203 return false; 2204 2205 int32 state = atoi(cstate); 2206 if(state < 0) 2207 gobj->SendObjectDeSpawnAnim(gobj->GetGUID()); 2208 else 2209 gobj->SetGoState(state); 2210 2211 return true; 2212 2213 return true; 2214 } 2215 2178 2216 bool ChatHandler::HandleListCreatureCommand(const char* args) 2179 2217 { … … 5473 5511 return true; 5474 5512 } 5513 5514 bool ChatHandler::HandleGroupLeaderCommand(const char* args) 5515 { 5516 Player* plr = NULL; 5517 Group* group = NULL; 5518 uint64 guid = 0; 5519 char* cname = strtok((char*)args, " "); 5520 5521 if(GetPlayerGroupAndGUIDByName(cname, plr, group, guid)) 5522 if(group && group->GetLeaderGUID() != guid) 5523 group->ChangeLeader(guid); 5524 5525 return true; 5526 } 5527 5528 bool ChatHandler::HandleGroupDisbandCommand(const char* args) 5529 { 5530 Player* plr = NULL; 5531 Group* group = NULL; 5532 uint64 guid = 0; 5533 char* cname = strtok((char*)args, " "); 5534 5535 if(GetPlayerGroupAndGUIDByName(cname, plr, group, guid)) 5536 if(group) 5537 group->Disband(); 5538 5539 return true; 5540 } 5541 5542 bool ChatHandler::HandleGroupRemoveCommand(const char* args) 5543 { 5544 Player* plr = NULL; 5545 Group* group = NULL; 5546 uint64 guid = 0; 5547 char* cname = strtok((char*)args, " "); 5548 5549 if(GetPlayerGroupAndGUIDByName(cname, plr, group, guid, true)) 5550 if(group) 5551 group->RemoveMember(guid, 0); 5552 5553 return true; 5554 } -
trunk/src/game/Object.cpp
r37 r42 265 265 { 266 266 flags2 = ((Unit*)this)->GetUnitMovementFlags(); 267 flags2 &= ~MOVEMENTFLAG_ONTRANSPORT; 268 flags2 &= ~MOVEMENTFLAG_SPLINE2; 267 269 } 268 270 break; -
trunk/src/game/World.cpp
r41 r42 2427 2427 2428 2428 SendServerMessage(msgid,str.c_str(),player); 2429 DEBUG_LOG("Server is %s in %s",(m_ShutdownMask & SHUTDOWN_MASK_RESTART ? "restart" : "shuttingdown"),str.c_str());2429 outstring_log("Server will %s in %s", (m_ShutdownMask & SHUTDOWN_MASK_RESTART ? "restart" : "shutdown"), str.c_str()); 2430 2430 } 2431 2431 }