Added more content, tweaked AI resources and buffs

- Added invasion-specific buffs
- Added factional handling
- Added AI switches
- Added construction/repairing
- Fixed enemy TANO color when changing status
- Fixed notification baselines to consider GCW-specific circumstances
- Optimized AI algorithmic complexity by eliminating expensive
arithmetic operations
- Fixed reposition state to avoid locations in water
- Considered tower defense buff for NPCs in combat service
- Compacted 3 AI threads into one
- Dynamic allocation of AI resources depending on patrol point index and
same faction AI density
- Added Withdrawal state for more realistic post-battle behaviour
- Positioned all pylons, camps, officers, terminals, barricades,
turrets, towers, cloners in the appropriate coordinates
This commit is contained in:
CharonInferar
2014-08-02 00:06:22 +02:00
parent b1f05c6802
commit 5981efda9f
56 changed files with 5074 additions and 1232 deletions
@@ -187,6 +187,8 @@ public class CreatureObject extends TangibleObject implements Serializable {
private transient CreatureObject calledPet;
private byte locomotion = 0;
private short GCWFatigue = 0;
private boolean isConstructing = false;
public CreatureObject(long objectID, Planet planet, Point3D position, Quaternion orientation, String Template) {
super(objectID, planet, position, orientation, Template);
@@ -1885,4 +1887,34 @@ public class CreatureObject extends TangibleObject implements Serializable {
public void setCalledPet(CreatureObject calledPet) {
this.calledPet = calledPet;
}
public short getGCWFatigue() {
return GCWFatigue;
}
public void setGCWFatigue(short gCWFatigue) {
GCWFatigue = gCWFatigue;
}
public boolean isTrader(){
if (isPlayer()){
PlayerObject player = (PlayerObject) this.getSlottedObject("ghost");
String profession = player.getProfession();
if (profession.equals("trader_0a") ||
profession.equals("trader_0b") ||
profession.equals("trader_0c") ||
profession.equals("trader_0d")){
return true;
}
}
return false;
}
public boolean isConstructing() {
return isConstructing;
}
public void setConstructing(boolean isConstructing) {
this.isConstructing = isConstructing;
}
}