void UpdateGauge(ISignalParameters parameters) { float hp = (float)(int)parameters.GetParameter(GameParams.MONSTER_HP); float maxHp = (float)(int)parameters.GetParameter(GameParams.MONSTER_MAX_HP); float rectWidth = GaugeFillMaxWidth * Mathf.Clamp01(hp / maxHp); Vector2 sizeDelta = GaugeFillImage.rectTransform.sizeDelta; sizeDelta.x = rectWidth; GaugeFillImage.rectTransform.sizeDelta = sizeDelta; }
private void ProcessInput(ISignalParameters parameters, bool isLocal) { GestureType gesture = (GestureType)parameters.GetParameter(GameParams.INPUT_TYPE); if (gesture == GestureType.SWIPE) { SwipePayload swipePayload = (SwipePayload)parameters.GetParameter(GameParams.INPUT_SWIPE_PAYLOAD); this.PopBubble(gesture, swipePayload.direction); } else { this.PopBubble(gesture); } }
private void OnPlaySFX(ISignalParameters parameters) { ESfx sfx = (ESfx)parameters.GetParameter(GameParams.AUDIO_ID); this.source.clip = this.audioMap[sfx]; this.source.Play(); }
void OnInputHostIP(ISignalParameters parameters) { if (connType != ConnectionType.CLIENT) { return; } hostIp = (string)parameters.GetParameter(GameParams.NETWORK_HOST_IP); JoinLocalGame(hostIp); }
private void OnMonsterShown(ISignalParameters parameters) { if (GaugeIcon != null) { GaugeIcon.SetActive(false); } MonsterType monsterType = (MonsterType)parameters.GetParameter(GameParams.MONSTER_TYPE); GaugeIcon = MonsterIcons.Find(mi => mi.Type == monsterType).Icon; GaugeIcon.SetActive(true); UpdateGauge(parameters); }
void OnNetworkStatusReceived(ISignalParameters parameters) { var status = (string)parameters.GetParameter(GameParams.NETWORK_STATUS); networkStatusDisplay.text = string.Format("Connection status: {0}", status); if (status.Contains("success")) { OnJoinSuccess(); } else if (status.Contains("Stopped")) { OnHostStopped(); } else { OnJoinFailed(); } }
void OnInputReceived(ISignalParameters parameters) { if (isLocalPlayer) { var type = (GestureType)parameters.GetParameter(GameParams.INPUT_TYPE); string textToDisplay = ""; switch (type) { case GestureType.TAP: var pos = (Vector2)parameters.GetParameter(GameParams.INPUT_TAP_POS); // server already dispatches this on its side if (!isServer) { CmdDispatchTap(pos); } CmdSpawnTapEffectToServer(pos); textToDisplay = string.Format("{0} Gesture detected!", type.ToString()); break; case GestureType.SWIPE: var payload = (SwipePayload)parameters.GetParameter(GameParams.INPUT_SWIPE_PAYLOAD); // server already dispatches this on its side if (!isServer) { CmdDispatchSwipe(payload); } CmdSpawnSwipeEffectToServer(payload); textToDisplay = string.Format("Swipe detected! direction: {0}, startPos: {1}, endPos: {2}, velocity: {3}", payload.direction.ToString(), payload.startScreenPos, payload.endScreenPos, payload.velocity); break; case GestureType.PINCH: if (!isServer) { CmdDispatchPinch(); } textToDisplay = string.Format("{0} Gesture detected!", type.ToString()); break; case GestureType.LONG_PRESS: if (!isServer) { CmdDispatchLongPress(); } textToDisplay = string.Format("{0} Gesture detected!", type.ToString()); break; default: textToDisplay = string.Format("{0} Gesture detected!", type.ToString()); break; } //display only to client screen if (!isServer) { DispatchText(textToDisplay); } //display only to server screen CmdDispatchTextToServer(textToDisplay); } }
void OnLogReceived(ISignalParameters parameters) { var text = (string)parameters.GetParameter(GameParams.DEBUG_TEXT); textDisplay.text += text + "\n"; }
void OnDisplayHostIp(ISignalParameters parameters) { var ip = (string)parameters.GetParameter(GameParams.NETWORK_HOST_IP); hostDisplay.text = "Host IP: " + ip; }