Browse Source

safe NPC profits

lakebane-strongholds
FatBoy-DOTC 3 months ago
parent
commit
1e29971b3c
  1. 13
      src/engine/net/client/ClientMessagePump.java
  2. 12
      src/engine/objects/NPC.java

13
src/engine/net/client/ClientMessagePump.java

@ -1435,14 +1435,13 @@ public class ClientMessagePump implements NetMsgHandler { @@ -1435,14 +1435,13 @@ public class ClientMessagePump implements NetMsgHandler {
bargain = 0;
break;
}
float profit = npc.getSellPercent(sourcePlayer) - bargain;
if(me.getItemBase().getType().equals(ItemType.POTION))
profit -= 1.0f;
if (profit < 1)
profit = 1;
if(ZoneManager.findSmallestZone(npc.loc) != null && ZoneManager.findSmallestZone(npc.loc).getSafeZone() == 1){
float profit;
if(npc.isInSafeZone())
profit = 0;
}
else
profit = npc.getSellPercent(sourcePlayer) - bargain;
if(profit > 0)
cost *= profit;

12
src/engine/objects/NPC.java

@ -193,6 +193,18 @@ public class NPC extends AbstractCharacter { @@ -193,6 +193,18 @@ public class NPC extends AbstractCharacter {
serializeForClientMsgOtherPlayer(npc, writer);
}
public boolean isInSafeZone() {
Zone zone = ZoneManager.findSmallestZone(this.getLoc());
if (zone != null) {
return zone.getSafeZone() == (byte) 1;
}
return false;
//return this.safeZone;
}
public static void serializeForClientMsgOtherPlayer(NPC npc, ByteBufferWriter writer)
throws SerializationException {

Loading…
Cancel
Save