Interface ISFSMMOApi

All Known Implementing Classes:
SFSMMOApi

public interface ISFSMMOApi
  • Method Details

    • getResponseAPI

      com.smartfoxserver.api.response.ISFSMMOResponseApi getResponseAPI()
    • sendObjectMessage

      void sendObjectMessage(Room targetRoom, User sender, ISFSObject message, Vec3D aoi)

      Send an Object message based on a custom SFSObject that can contain any data. Typically this is used for sending game moves to players or other game related updates.

      The difference with the regular version of this Request is that it works with a custom Area Of Interest (AOI) inside an MMORoom. Instead of using the default Room AOI here we can specify a custom AOI which should be smaller that the default one.

      NOTE: The sender must be joined in the target MMORoom.

      Parameters:
      targetRoom - the MMORoom
      sender - the sender of the Object
      message - the data
      aoi - the custom Area Of Interest (AOI)
    • sendPublicMessage

      void sendPublicMessage(Room targetRoom, User sender, String message, ISFSObject params, Vec3D aoi)
      Sends a public chat message.

      The difference with the regular version of this Request is that it works with a custom Area Of Interest (AOI) inside an MMORoom. Instead of using the default Room AOI here we can specify a custom AOI which should be smaller that the default one.

      Parameters:
      targetRoom - the MMORoom
      sender - the sender of the Message
      message - the chat message
      params - an optional data object (e.g. to define font and color of the message)
      aoi - the custom Area Of Interest (AOI)
    • setUserPosition

      void setUserPosition(User user, Vec3D pos, Room targetRoom)
      Set the new User position inside an MMORoom
      Parameters:
      user - The User
      pos - The new position
      targetRoom - The target MMORoom
      See Also:
    • setMMOItemPosition

      void setMMOItemPosition(BaseMMOItem item, Vec3D pos, Room targetRoom)
      Set or update an MMOItem inside an MMORoom
      Parameters:
      item - the MMOItem
      pos - the position in 2D/3D space
      targetRoom - the target MMORoom
      Since:
      2.8.x
      See Also:
    • removeMMOItem

      void removeMMOItem(BaseMMOItem item)
      Remove an MMOItem from an MMORoom. (A Room is not required here as the system already keeps track of which MMOItem belongs to which MMORoom) This in turn will affect all Users who had this MMOItem in their AOI via a client side PROXIMITY_LIST_UPDATE
      Parameters:
      item - the MMOItem to remove
      See Also:
    • setMMOItemVariables

      void setMMOItemVariables(BaseMMOItem item, List<IMMOItemVariable> variables)
      Set MMOItemVariables. Only the changed variables are broadcast to Users that can "see" the MMOItem in the MMORoom. In order to delete a variable set it to null.
      Parameters:
      item - the MMOItem, owner of the variables
      variables - the variables
      See Also:
    • setMMOItemVariables

      void setMMOItemVariables(BaseMMOItem item, List<IMMOItemVariable> variables, boolean fireClientEvent)
      Set MMOItemVariables. Only the changed variables are broadcast to the Users that can "see" the MMOItem in the MMORoom. In order to delete a variable set it to null.
      Parameters:
      item - the MMOItem, owner of the variables
      variables - the variables
      fireClientEvent - set to true to send an update to clients
      See Also: