Added preliminary terrain collision detection, added some combat functions, changed CreatureObjects superclass to Tangible Object

Updated engine
Delete all files in odb/creature (creature superclass was changed so db
wipe is needed)
This commit is contained in:
Light2
2013-07-30 21:29:35 +02:00
parent 1cff088aeb
commit 1078331b60
10 changed files with 484 additions and 71 deletions
+39 -1
View File
@@ -50,23 +50,50 @@ public class WeaponObject extends SWGObject {
private WeaponMessageBuilder messageBuilder;
private float attackSpeed = 1;
private float maxRange;
public WeaponObject(long objectID, Planet planet, String template) {
super(objectID, planet, new Point3D(0, 0, 0), new Quaternion(1, 0, 1, 0), template);
messageBuilder = new WeaponMessageBuilder(this);
calculateRange();
}
public WeaponObject(long objectID, Planet planet, String template, Point3D position, Quaternion orientation) {
super(objectID, planet, position, orientation, template);
messageBuilder = new WeaponMessageBuilder(this);
calculateRange();
}
public WeaponObject() {
super();
messageBuilder = new WeaponMessageBuilder(this);
//calculateRange();
}
private void calculateRange() {
int weaponType = getWeaponType();
switch(weaponType) {
case 0: maxRange = 64; break;
case 1: maxRange = 50; break;
case 2: maxRange = 35; break;
case 3: maxRange = 64; break;
case 4: maxRange = 5; break;
case 5: maxRange = 5; break;
case 6: maxRange = 5; break;
case 7: maxRange = 5; break;
case 8: maxRange = 64; break;
case 9: maxRange = 5; break;
case 10: maxRange = 5; break;
case 11: maxRange = 5; break;
}
}
public int getIncapTimer() {
return incapTimer;
}
@@ -129,6 +156,9 @@ public class WeaponObject extends SWGObject {
String template = getTemplate();
if(template == null)
return weaponType;
if(template.contains("rifle")) weaponType = 0;
if(template.contains("carbine")) weaponType = 1;
if(template.contains("pistol")) weaponType = 2;
@@ -174,4 +204,12 @@ public class WeaponObject extends SWGObject {
return messageBuilder;
}
public float getMaxRange() {
return maxRange;
}
public void setMaxRange(float maxRange) {
this.maxRange = maxRange;
}
}