com.threerings.tudey.server.logic
Class MobileLogic

java.lang.Object
  extended by com.threerings.util.ShallowObject
      extended by com.threerings.tudey.server.logic.Logic
          extended by com.threerings.tudey.server.logic.ActorLogic
              extended by com.threerings.tudey.server.logic.MobileLogic
All Implemented Interfaces:
HasActor, TudeySceneManager.TickParticipant, ActorAdvancer.Environment
Direct Known Subclasses:
ActiveLogic

public class MobileLogic
extends ActorLogic
implements TudeySceneManager.TickParticipant, ActorAdvancer.Environment

Controls the state of a mobile actor.


Nested Class Summary
 
Nested classes/interfaces inherited from class com.threerings.tudey.server.logic.ActorLogic
ActorLogic.CollisionFlagObserver
 
Nested classes/interfaces inherited from class com.threerings.tudey.server.logic.Logic
Logic.ShapeObserver
 
Constructor Summary
MobileLogic()
           
 
Method Summary
 boolean collides(Actor actor, Shape shape)
          Checks whether the actor is colliding with anything.
 float getDirection()
          Returns the direction of the mobile.
 boolean getPenetration(Actor actor, Shape shape, Vector2f result)
          Checks whether the actor is colliding with anything and, if it is, populates the provided object with the penetration vector (the minimum translation required to cancel the penetration).
 TudeySceneModel getSceneModel()
          Returns a reference to the scene model.
 Actor getSnapshot()
          Returns the current tick's snapshot of the actor.
 void stepLimit(float minDirection, float maxDirection, boolean remove)
          Adds or removes a step limiter.
 boolean tick(int timestamp)
          Ticks the participant.
 void transfer(Logic source, Map<Object,Object> refs)
          Transfers state from the specified source logic.
 
Methods inherited from class com.threerings.tudey.server.logic.ActorLogic
addCollisionFlagObserver, addShapeObserver, bodyWillEnter, bodyWillLeave, destroy, getActivator, getActor, getCollisionFlags, getEntityKey, getModel, getPreviousSnapshot, getRotation, getShape, getShapeElement, getSnapshotDelta, getSource, getTags, getTranslation, init, isActive, isDefaultEntrance, isDestroyed, isRemoved, isStatic, move, remove, removeCollisionFlagObserver, removeShapeObserver, request, setActivator, setSource, setVariable, signal, warp, warp, warp
 
Methods inherited from class com.threerings.tudey.server.logic.Logic
getPatrolPath, getSceneManager, getTransform, getTransform, getVariable, init, isVisible, resolveTarget
 
Methods inherited from class com.threerings.util.ShallowObject
equals, hashCode
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MobileLogic

public MobileLogic()
Method Detail

stepLimit

public void stepLimit(float minDirection,
                      float maxDirection,
                      boolean remove)
Adds or removes a step limiter.


getDirection

public float getDirection()
Returns the direction of the mobile.


tick

public boolean tick(int timestamp)
Description copied from interface: TudeySceneManager.TickParticipant
Ticks the participant.

Specified by:
tick in interface TudeySceneManager.TickParticipant
Parameters:
timestamp - the timestamp of the current tick.
Returns:
true to continue ticking the participant, false to remove it from the list.

getSceneModel

public TudeySceneModel getSceneModel()
Description copied from interface: ActorAdvancer.Environment
Returns a reference to the scene model.

Specified by:
getSceneModel in interface ActorAdvancer.Environment

getPenetration

public boolean getPenetration(Actor actor,
                              Shape shape,
                              Vector2f result)
Description copied from interface: ActorAdvancer.Environment
Checks whether the actor is colliding with anything and, if it is, populates the provided object with the penetration vector (the minimum translation required to cancel the penetration).

Specified by:
getPenetration in interface ActorAdvancer.Environment
Returns:
true if a collision was detected (in which case the result vector will be populated), false otherwise.

collides

public boolean collides(Actor actor,
                        Shape shape)
Description copied from interface: ActorAdvancer.Environment
Checks whether the actor is colliding with anything.

Specified by:
collides in interface ActorAdvancer.Environment

getSnapshot

public Actor getSnapshot()
Description copied from class: ActorLogic
Returns the current tick's snapshot of the actor.

Overrides:
getSnapshot in class ActorLogic

transfer

public void transfer(Logic source,
                     Map<Object,Object> refs)
Description copied from class: Logic
Transfers state from the specified source logic. Where relevant, this also takes the place of addition/startup notification.

Overrides:
transfer in class ActorLogic


Copyright © 2011. All Rights Reserved.