wiki.sine.space | sinespace

Difference between revisions of "Scripting/SChat"

From wiki.sine.space
Jump to: navigation, search
m
Line 61: Line 61:
 
}}
 
}}
  
{{ScriptFunction|void|OnChat|(Action< SChatMessage > callback);| Bind a function to the OnChat event. This function will be called every time a new chat message is received on the local channel.|5=<pre>
+
{{ScriptFunction|void|OnChat|(Action< SChatMessage > callback);| Bind a function to the OnChat event. This function will be called every time a new chat message is received on the local channel.|5=<pre>Space.Network.Chat.OnChat(OnChatFunction) </pre>|6=<pre>--this script takes every new chat message and displays it in a UIText
function oc(SChatMessage)
+
uiText = Space.Host.GetReference("text").UIText --Add this Text object as reference in Scripting Runtime
  Space.Log(SChatMessage.Message)
+
 
 +
OnChatFunction = function(SChatMessage)
 +
uiText.Text = SChatMessage.Sender ..": " .. SChatMessage.Message  
 
end
 
end
  
Space.Network.Chat.OnChat(oc) </pre>
+
Space.Network.Chat.OnChat(OnChatFunction) </pre>
 
}}
 
}}
  
Line 74: Line 76:
 
Space.Network.Chat.GetXMPPName("Test room")
 
Space.Network.Chat.GetXMPPName("Test room")
 
}}
 
}}
 +
 +
 +
{{ScriptFunction|void|JoinVoice|(string name, int prioroty<nowiki>=</nowiki>5, int spatial);|Join a chat channel.|5=
 +
Space.Network.Chat.JoinChat("Test room")|6=<pre></pre>
 +
}}
 +
  
  
  
 
{{Scripting Navbox}}
 
{{Scripting Navbox}}

Revision as of 09:02, 24 November 2021

Members

JoinChat

void JoinChat (string name);

Join a chat channel.

Space.Network.Chat.JoinChat("Test room")


--this script will make the player join a chat when entering a trigger collider and leave it when leaving
--[Requires this object to have a "Trigger" collider]

thisObject = Space.Host.ExecutingObject
thisPlayer = Space.Scene.PlayerAvatar

OTS = function(gameObject)
  if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then 

    Space.Network.Chat.JoinChat("PrivateChatZone")
    
  end

end

OTE = function(gameObject)
  if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

    Space.Network.Chat.LeaveChat("PrivateChatZone")
    
  end 
  
end


thisObject.OnTriggerStart(OTS)
thisObject.OnTriggerExit(OTE)

LeaveChat

void LeaveChat (string name);

Leave a chat channel.

Space.Network.Chat.LeaveChat("Test room")


--this script will make the player join a chat when entering a trigger collider and leave it when leaving
--[Requires this object to have a "Trigger" collider]

thisObject = Space.Host.ExecutingObject
thisPlayer = Space.Scene.PlayerAvatar

OTS = function(gameObject)
  if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then 

    Space.Network.Chat.JoinChat("PrivateChatZone")
    
  end

end

OTE = function(gameObject)
  if gameObject.Avatar ~= nil and thisPlayer == gameObject.Avatar then

    Space.Network.Chat.LeaveChat("PrivateChatZone")
    
  end 
  
end


thisObject.OnTriggerStart(OTS)
thisObject.OnTriggerExit(OTE)

OnChat

void OnChat (Action< SChatMessage > callback);
Bind a function to the OnChat event. This function will be called every time a new chat message is received on the local channel.
Space.Network.Chat.OnChat(OnChatFunction) 


--this script takes every new chat message and displays it in a UIText 
uiText = Space.Host.GetReference("text").UIText --Add this Text object as reference in Scripting Runtime

OnChatFunction = function(SChatMessage)
uiText.Text = SChatMessage.Sender ..": " .. SChatMessage.Message 
end

Space.Network.Chat.OnChat(OnChatFunction) 


GetXMPPName

string GetXMPPName (string name);

Get XMPP name.

Space.Network.Chat.GetXMPPName("Test room")



JoinVoice

void JoinVoice (string name, int prioroty=5, int spatial);

Join a chat channel.

Space.Network.Chat.JoinChat("Test room")