mirror of
https://github.com/2revoemag/PSF-BotServer.git
synced 2026-07-15 16:34:39 +00:00
max exo-suits did not look like one another; revert to Standard upon final clean-up
This commit is contained in:
parent
6ef6d6834f
commit
8f339801cf
3 changed files with 21 additions and 3 deletions
|
|
@ -110,6 +110,20 @@ class ExoSuitDefinition(private val suitType : ExoSuitType.Value) extends BasicD
|
||||||
}
|
}
|
||||||
|
|
||||||
def Use : ExoSuitDefinition = this
|
def Use : ExoSuitDefinition = this
|
||||||
|
|
||||||
|
def canEqual(other: Any): Boolean = other.isInstanceOf[ExoSuitDefinition]
|
||||||
|
|
||||||
|
override def equals(other: Any): Boolean = other match {
|
||||||
|
case that: ExoSuitDefinition =>
|
||||||
|
(that canEqual this) &&
|
||||||
|
suitType == that.suitType
|
||||||
|
case _ => false
|
||||||
|
}
|
||||||
|
|
||||||
|
override def hashCode(): Int = {
|
||||||
|
val state = Seq(suitType)
|
||||||
|
state.map(_.hashCode()).foldLeft(0)((a, b) => 31 * a + b)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class SpecialExoSuitDefinition(private val suitType : ExoSuitType.Value) extends ExoSuitDefinition(suitType) {
|
class SpecialExoSuitDefinition(private val suitType : ExoSuitType.Value) extends ExoSuitDefinition(suitType) {
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package services.avatar.support
|
||||||
|
|
||||||
import net.psforever.objects.guid.{GUIDTask, TaskResolver}
|
import net.psforever.objects.guid.{GUIDTask, TaskResolver}
|
||||||
import net.psforever.objects.Player
|
import net.psforever.objects.Player
|
||||||
|
import net.psforever.types.ExoSuitType
|
||||||
import services.{RemoverActor, Service}
|
import services.{RemoverActor, Service}
|
||||||
import services.avatar.{AvatarAction, AvatarServiceMessage}
|
import services.avatar.{AvatarAction, AvatarServiceMessage}
|
||||||
|
|
||||||
|
|
@ -28,6 +29,9 @@ class CorpseRemovalActor extends RemoverActor {
|
||||||
def ClearanceTest(entry : RemoverActor.Entry) : Boolean = !entry.zone.Corpses.contains(entry.obj)
|
def ClearanceTest(entry : RemoverActor.Entry) : Boolean = !entry.zone.Corpses.contains(entry.obj)
|
||||||
|
|
||||||
def DeletionTask(entry : RemoverActor.Entry) : TaskResolver.GiveTask = {
|
def DeletionTask(entry : RemoverActor.Entry) : TaskResolver.GiveTask = {
|
||||||
GUIDTask.UnregisterPlayer(entry.obj.asInstanceOf[Player])(entry.zone.GUID)
|
val player = entry.obj.asInstanceOf[Player]
|
||||||
|
val task = GUIDTask.UnregisterPlayer(player)(entry.zone.GUID)
|
||||||
|
player.ExoSuit = ExoSuitType.Standard
|
||||||
|
task
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -467,7 +467,7 @@ class PlayerControlDeathStandingTest extends ActorTest {
|
||||||
assert(
|
assert(
|
||||||
msg_avatar(7) match {
|
msg_avatar(7) match {
|
||||||
case AvatarServiceMessage("test", AvatarAction.DestroyDisplay(killer, victim, _, _))
|
case AvatarServiceMessage("test", AvatarAction.DestroyDisplay(killer, victim, _, _))
|
||||||
if killer == player1Source && victim == PlayerSource(player2) => true
|
if killer.Name.equals(player1.Name) && victim.Name.equals(player2.Name) => true
|
||||||
case _ => false
|
case _ => false
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
@ -585,7 +585,7 @@ class PlayerControlDeathSeatedTest extends ActorTest {
|
||||||
assert(
|
assert(
|
||||||
msg_avatar(8) match {
|
msg_avatar(8) match {
|
||||||
case AvatarServiceMessage("test", AvatarAction.DestroyDisplay(killer, victim, _, _))
|
case AvatarServiceMessage("test", AvatarAction.DestroyDisplay(killer, victim, _, _))
|
||||||
if killer == player1Source && victim == PlayerSource(player2) => true
|
if killer.Name.equals(player1.Name) && victim.Name.equals(player2.Name) => true
|
||||||
case _ => false
|
case _ => false
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue