new NPC for ToL support

This commit is contained in:
2024-02-14 19:36:28 -06:00
parent 22a0cb2474
commit 9f5bdce571
@@ -100,10 +100,10 @@ public class ActivateNPCMsgHandler extends AbstractClientMsgHandler {
if (contractItem == null)
return false;
if(msg.getContractItem() == 850){//runemaster
for(AbstractCharacter abs : building.getHirelings().keySet()) {
NPC npc = (NPC)abs;
if(npc.contract.getContractID() == 850)
if (msg.getContractItem() == 850) {//runemaster
for (AbstractCharacter abs : building.getHirelings().keySet()) {
NPC npc = (NPC) abs;
if (npc.contract.getContractID() == 850)
return false; //can only have 1 runemaster
}
}
@@ -127,8 +127,29 @@ public class ActivateNPCMsgHandler extends AbstractClientMsgHandler {
// Check if contract can be slotted in this building
if (contract.canSlotinBuilding(building) == false)
return false;
if (contract.canSlotinBuilding(building) == false) {
boolean override = false;
if (building.getBlueprint().getBuildingGroup().equals(Enum.BuildingGroup.TOL)) {
if (contract.getContractID() == 899)//alchemist
override = true;
if (contract.getContractID() == 866)//banker
override = true;
if (contract.getContractID() == 865)//siege engineer
override = true;
}
if (building.getBlueprint().getBuildingGroup().equals(Enum.BuildingGroup.SIEGETENT)) {
if (contract.getContractID() == 865)//siege engineer
override = true;
}
if(building.getBlueprint().getBuildingGroup().equals(Enum.BuildingGroup.SIEGETENT)){
if(contract.getContractID() == 865)//siege engineer
override = true;
}
if(override == false)
return false;
}
if (!BuildingManager.addHireling(building, player, zone, contract, contractItem))
return false;