Merge remote-tracking branch 'upstream/master'

Conflicts:
	changelog.txt
This commit is contained in:
Paul Coene
2016-09-18 21:32:09 -04:00
7 changed files with 240 additions and 135 deletions
+1
View File
@@ -1007,6 +1007,7 @@ void command_summon(Client *c, const Seperator *sep)
szp->x_pos = c->GetX(); // May need to add a factor of 8 in here..
szp->y_pos = c->GetY();
szp->z_pos = c->GetZ();
szp->instance_id = zone->GetInstanceID();
worldserver.SendPacket(pack);
safe_delete(pack);
}
+4
View File
@@ -872,6 +872,10 @@ bool NPC::SpawnZoneController(){
npc_type->merchanttype = 0;
npc_type->bodytype = 11;
if (RuleB(Zone, EnableZoneControllerGlobals)) {
npc_type->qglobal = true;
}
npc_type->prim_melee_type = 28;
npc_type->sec_melee_type = 28;
+12 -1
View File
@@ -543,7 +543,18 @@ void WorldServer::Process() {
else {
SendEmoteMessage(szp->adminname, 0, 0, "Summoning %s to %s %1.1f, %1.1f, %1.1f", szp->name, szp->zone, szp->x_pos, szp->y_pos, szp->z_pos);
}
client->MovePC(database.GetZoneID(szp->zone), szp->instance_id, szp->x_pos, szp->y_pos, szp->z_pos, client->GetHeading(), szp->ignorerestrictions, GMSummon);
if (!szp->instance_id) {
client->MovePC(database.GetZoneID(szp->zone), szp->instance_id, szp->x_pos, szp->y_pos, szp->z_pos, client->GetHeading(), szp->ignorerestrictions, GMSummon);
} else {
if (database.GetInstanceID(client->CharacterID(), database.GetZoneID(szp->zone)) == 0) {
client->AssignToInstance(szp->instance_id);
client->MovePC(database.GetZoneID(szp->zone), szp->instance_id, szp->x_pos, szp->y_pos, szp->z_pos, client->GetHeading(), szp->ignorerestrictions, GMSummon);
} else {
client->RemoveFromInstance(database.GetInstanceID(client->CharacterID(), database.GetZoneID(szp->zone)));
client->AssignToInstance(szp->instance_id);
client->MovePC(database.GetZoneID(szp->zone), szp->instance_id, szp->x_pos, szp->y_pos, szp->z_pos, client->GetHeading(), szp->ignorerestrictions, GMSummon);
}
}
}
break;
}