final case class BattleplanMessage(char_id: Long, player_name: String, zone_id: Int, diagrams: List[BattleDiagramAction]) extends PlanetSideGamePacket with Product with Serializable
Share drawn images and words on the tactical map among a group of players.
Each packet usually contains a small portion of an image, herein called a "diagram."
BattleplanMessage
packets are accumulative towards a full diagram.
Moreover, rather than the player_name
, each diagram is associated on a client by the char_id
field.
Only squad leaders and platoon leaders can draw on the map and share with other players in their squad or platoon.
To start drawing, a would-be artist must have all clients who will receive their diagrams acknowledge a StartDrawing
action.
The char_id
with this StartDrawing
will associate all diagrams submitted with the same char_id
's portfolio.
Multiple portfolio definitions may exist on a client at a given time and each will manage their own diagrams.
When a given portfolio submits a StopDrawing
action that is received, the previous diagrams associated with it will be cleared.
That char_id
will no longer accept diagrams on that client.
Other portfolios will continue to accept diagrams as initialized.
When no portfolios are being accepted, the "Toggle -> Battleplan" button on that client's tactical map will be disabled.
When there is at least one portfolio accepted, the "Battleplan" button will be functional and can be toggled.
To construct line segments, chain StrokeTwo
diagrams in the given packet entry.
Each defined point will act like a successive vertex in a chain of segments.
Any non-vertex entry in between entries, e.g., a change of line color, will break the chain of line segments.
For example:
RED-A-B-C will construct red lines segments A-B and B-C.
RED-A-B-GREEN-C will only construct a red line segement A-B.
RED-A-B-GREEN-C-D will construct a red line segement A-B and a green line segment C-D.
(Default line color, if none is declared specifically, is gray.)
To construct a message, define a point to act as the center baseline for the text.
The message will be written above and outwards from that point.
Messages do not carry properties over from line segments - they set their own color and do not have line thickness.
Any single portfolio may have only fifteen messages written to the tactical map at a time.
- char_id
na; same as in
CharacterInfoMessage
- player_name
the player who contributed this battle plan
- zone_id
on which continent the battle plan will be overlaid; can identify as "no zone" 0 when performing instructions not specific to drawing
- diagrams
a list of the itemized actions that will construct this plan or are used to modify the plan
- Source
- BattleplanMessage.scala
- Alphabetic
- By Inheritance
- BattleplanMessage
- Product
- Equals
- PlanetSideGamePacket
- PlanetSidePacket
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new BattleplanMessage(char_id: Long, player_name: String, zone_id: Int, diagrams: List[BattleDiagramAction])
- char_id
na; same as in
CharacterInfoMessage
- player_name
the player who contributed this battle plan
- zone_id
on which continent the battle plan will be overlaid; can identify as "no zone" 0 when performing instructions not specific to drawing
- diagrams
a list of the itemized actions that will construct this plan or are used to modify the plan
Type Members
- type Packet = BattleplanMessage
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val char_id: Long
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- val diagrams: List[BattleDiagramAction]
- def encode: Attempt[BitVector]
- Definition Classes
- BattleplanMessage → PlanetSidePacket
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def opcode: GamePacketOpcode.Value
- Definition Classes
- BattleplanMessage → PlanetSideGamePacket → PlanetSidePacket
- val player_name: String
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- val zone_id: Int