[Fix] Bug concerning not being able to shoot seeker weapons.
This commit is contained in:
parent
31146a0874
commit
de91ebd91f
@ -315,7 +315,7 @@
|
|||||||
<price>11500000</price>
|
<price>11500000</price>
|
||||||
<fabricator>House Goddard</fabricator>
|
<fabricator>House Goddard</fabricator>
|
||||||
<tech>9999</tech>
|
<tech>9999</tech>
|
||||||
<description>A Dvaered Goddard.</description>
|
<description>A Draktharr Goddard.</description>
|
||||||
<movement>
|
<movement>
|
||||||
<thrust>100</thrust>
|
<thrust>100</thrust>
|
||||||
<turn>80</turn>
|
<turn>80</turn>
|
||||||
@ -453,9 +453,9 @@
|
|||||||
<sound>engine</sound>
|
<sound>engine</sound>
|
||||||
<class>1</class>
|
<class>1</class>
|
||||||
<price>400000</price>
|
<price>400000</price>
|
||||||
<fabricator>House Dvaered</fabricator>
|
<fabricator>House Draktharr</fabricator>
|
||||||
<tech>8</tech>
|
<tech>8</tech>
|
||||||
<description>The Vendetta displays the House Dvaered philosophy very well. Give a ship as many intimidating guns as you can, layer it with as much armour and you can, and sort of forget about giving it proper electronics. It's amazing to see that these fly.</description>
|
<description>The Vendetta displays the House Draktharr philosophy very well. Give a ship as many intimidating guns as you can, layer it with as much armour and you can, and sort of forget about giving it proper electronics. It's amazing to see that these fly.</description>
|
||||||
<movement>
|
<movement>
|
||||||
<thrust>200</thrust>
|
<thrust>200</thrust>
|
||||||
<turn>125</turn>
|
<turn>125</turn>
|
||||||
|
2
src/ai.c
2
src/ai.c
@ -944,6 +944,8 @@ static int ai_secondary(lua_State* L) {
|
|||||||
char* type;
|
char* type;
|
||||||
const char* otype;
|
const char* otype;
|
||||||
|
|
||||||
|
po = NULL;
|
||||||
|
|
||||||
/* Search for a type. */
|
/* Search for a type. */
|
||||||
type = NULL;
|
type = NULL;
|
||||||
if(lua_isstring(L, 1))
|
if(lua_isstring(L, 1))
|
||||||
|
17
src/pilot.c
17
src/pilot.c
@ -248,11 +248,19 @@ static void pilot_shootWeapon(Pilot* p, PilotOutfit* w, const unsigned int t) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* Missile launchers. */
|
/* Missile launchers. */
|
||||||
/* Must be secondary weapon, Shooter can't be the target. */
|
/* Must be secondary weapon. */
|
||||||
else if(outfit_isLauncher(w->outfit) && (w == p->secondary) && (p->id != t)) {
|
else if(outfit_isLauncher(w->outfit) && (w == p->secondary)) {
|
||||||
if(p->ammo && (p->ammo->quantity > 0)) {
|
/* Shooter can't be the target - Sanity check for the player. */
|
||||||
|
if((w->outfit->type != OUTFIT_TYPE_MISSILE_DUMB) && (p->id == t))
|
||||||
|
return;
|
||||||
|
|
||||||
|
/* Must have ammo left. */
|
||||||
|
if(p->ammo && (p->ammo->quantity <= 0))
|
||||||
|
return;
|
||||||
|
|
||||||
/* Enough energy? */
|
/* Enough energy? */
|
||||||
if(outfit_energy(w->outfit) > p->energy) return;
|
if(outfit_energy(w->outfit) > p->energy)
|
||||||
|
return;
|
||||||
|
|
||||||
p->energy -= outfit_energy(w->outfit);
|
p->energy -= outfit_energy(w->outfit);
|
||||||
weapon_add(p->ammo->outfit, p->solid->dir, &p->solid->pos,
|
weapon_add(p->ammo->outfit, p->solid->dir, &p->solid->pos,
|
||||||
@ -262,7 +270,6 @@ static void pilot_shootWeapon(Pilot* p, PilotOutfit* w, const unsigned int t) {
|
|||||||
p->ammo->quantity -= 1; /* There's no getting this one back. */
|
p->ammo->quantity -= 1; /* There's no getting this one back. */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/* Damage the pilot. */
|
/* Damage the pilot. */
|
||||||
void pilot_hit(Pilot* p, const Solid* w, const unsigned int shooter,
|
void pilot_hit(Pilot* p, const Solid* w, const unsigned int shooter,
|
||||||
|
Loading…
Reference in New Issue
Block a user