public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) { float r = property.FindPropertyRelative("r").floatValue; float g = property.FindPropertyRelative("g").floatValue; float b = property.FindPropertyRelative("b").floatValue; float a = property.FindPropertyRelative("a").floatValue; SerializedColor c = new SerializedColor(EditorGUI.ColorField(position, label, new Color(r, g, b, a))); property.FindPropertyRelative("r").floatValue = c.GetColor.r; property.FindPropertyRelative("g").floatValue = c.GetColor.g; property.FindPropertyRelative("b").floatValue = c.GetColor.b; property.FindPropertyRelative("a").floatValue = c.GetColor.a; }
/// <summary> /// start game session /// NOTE: ONLY CALLED FROM SERVER /// </summary> public void StartGame() { // decide player colors and send to all connected clients int count = 0; foreach (CredentialToken player in ServerManager.Instance.ConnectedUsers) { SerializedColor playerColor = new SerializedColor(possibleColors[count]); PlayerColors[player] = playerColor; count++; } BinaryFormatter bf = new BinaryFormatter(); MemoryStream ms = new MemoryStream(); bf.Serialize(ms, PlayerColors); SetColors setColors = SetColors.Create(Bolt.GlobalTargets.Others); setColors.BinaryData = ms.ToArray(); setColors.Send(); // = SendConnectedClients.Create(connection); //sendClients.BinaryData = ms.ToArray(); //sendClients.Send(); SceneChangeToken token = new SceneChangeToken(); token.Reason = "StartGame"; token.SceneTo = MainGameScene; token.SceneFrom = Application.loadedLevelName; Debug.Log("Starting game from gamemanager..."); //Instantiate(EndGameManagerPrefab); //Instantiate(GameTypeManagerPrefab); BoltNetwork.LoadScene("Game", token); }
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { SerializedColor sv = new SerializedColor(((Color)value).r, ((Color)value).g, ((Color)value).b, ((Color)value).a); JToken.FromObject(JsonConvert.SerializeObject(sv)).WriteTo(writer); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { SerializedColor sc = JsonConvert.DeserializeObject <SerializedColor>(JToken.Load(reader).ToString()); return(new Color(sc.r, sc.g, sc.b, sc.a)); }