Beispiel #1
0
        public override void InitializeObject(BaseObjectData objectData)
        {
            LuaCustom3DObjectData data = objectData as LuaCustom3DObjectData;
            base.InitializeObject(data);

            this.Write("-- no properties currently.\r\n");
        }
Beispiel #2
0
        /// <summary>
        /// Called to consume an item from the inventory on pointer click
        /// </summary>
        /// <param name="baseObjectData"></param>
        public void HandleOnInventoryItemPointerClicked(BaseObjectData baseObjectData)
        {
            Debug.Log(baseObjectData.ToString());

            //find the inventory data item that matches the clicked element
            var index = inventoryData.Items.FindIndex(inventoryItem => inventoryItem.BaseObjectData == baseObjectData);

            //if there is an inventory item for this clicked UI icon
            if (index != -1)
            {
                var inventoryItem = inventoryData.Items[index];

                //decrease the amount in the inventory
                inventoryItem.ChangeAmount(-1);

                //find the UI text
                index = Items.FindIndex(inventorySlot => inventorySlot.BaseObjectData == baseObjectData);
                if (index != -1)
                {
                    //set the text
                    Items[index].Text.text = inventoryItem.Amount.ToString();
                }

                //TODO - update the player's state (e.g. increase health/speed), play UseClip audio
            }
        }
Beispiel #3
0
        public override void CreateObject(BaseObjectData objectData)
        {
            this.Write("local ");

            this.Write(this.ToStringHelper.ToStringWithCulture(objectData.Name));

            this.Write(" = ccui.CustomObject:create()\r\n");
        }
    private bool TryOpen <T>(BaseObjectData <T> baseObjectData, params Func <bool>[] funcs)
        where T : BaseObjectData <T>
    {
        if (!baseObjectData.IsOpened && funcs.All(func => func()))
        {
            baseObjectData.Open();
            return(true);
        }

        return(false);
    }
    private bool TryIncreaseObjectLevel <T>(BaseObjectData <T> baseObjectData, params Func <bool>[] funcs)
        where T : BaseObjectData <T>
    {
        if (baseObjectData.Level == baseObjectData.MaxLevel && baseObjectData.ObjectLevel < ObjectLevel.platinum && funcs.All(func => func()))
        {
            baseObjectData.IncreaseObjectLevel();
            return(true);
        }

        return(false);
    }
 public bool PaidIncrease <T>(BaseObjectData <T> baseObjectData)
     where T : BaseObjectData <T>
 {
     if (baseObjectData.IsOpened && baseObjectData.Level < baseObjectData.MaxLevel)
     {
         if (Money.TakeLevelMoney(baseObjectData.IncreasingCost))
         {
             baseObjectData.IncreaseLevel();
             return(true);
         }
     }
     return(false);
 }
Beispiel #7
0
        public override void CreateObject(BaseObjectData objectData)
        {
            LuaCustomObjectData data = objectData as LuaCustomObjectData;

            this.Write("local luaScript = require(\"");

            this.Write(this.ToStringHelper.ToStringWithCulture(CocoStudio.Basic.Option.luaScriptFolderName));

            this.Write(".");

            this.Write(this.ToStringHelper.ToStringWithCulture(System.IO.Path.GetFileName(data.ScriptData.RelativeScriptFile).ToString().Replace(".lua", null)));

            this.Write("\")\r\n");

            this.Write(this.ToStringHelper.ToStringWithCulture(GetNameDeclaration(objectData.Name)));

            this.Write(" = luaScript.CreateCustomNode()\r\n");
        }
Beispiel #8
0
        public override void InitializeObject(BaseObjectData objectData)
        {
            LuaCustomObjectData data = objectData as LuaCustomObjectData;
            base.InitializeObject(data);

            this.Write("luaScript.SetLabelText(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(", \"");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.LabelText));

            this.Write("\")\r\nluaScript.SetLabelFont(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(", ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.LabelFont));

            this.Write(")\r\nluaScript.GetLabelVisible(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(", ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.LabelVisible.ToString().ToLower()));

            this.Write(")\r\nluaScript.SetMixedColor(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(", ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.MixedColor.ToLuaString()));

            this.Write(")\r\n");
        }
Beispiel #9
0
        public override BaseObjectData MergeWith(BaseObjectData data)
        {
            DataSourceData dsData = (DataSourceData)data;

            // merge methods
            foreach (MethodData m in dsData.Methods.Values)
            {
                this.AddMethod(m);
            }

            // merge data fields
            foreach (DataFieldData field in dsData.DataFields.Values)
            {
                this.AddDataField(field);
            }

            // merge reference fields
            foreach (ReferenceFieldData field in dsData.ReferenceFields.Values)
            {
                this.AddReferenceField(field);
            }

            return(this);
        }
        // -------------------------------------------

        /*
         * OnNetworkEvent
         */
        protected virtual void OnNetworkEvent(string _nameEvent, bool _isLocalEvent, int _networkOriginID, int _networkTargetID, object[] _list)
        {
#if ENABLE_MULTIPLAYER_TIMELINE
            if (_nameEvent == EVENT_ACTORTIMELINE_STATE_FACE_PLAYER)
            {
                string nameOrigin = (string)_list[0];
                if (nameOrigin == NameActor)
                {
                    bool behaviourFaceMainPlayer = bool.Parse((string)_list[1]);
                    if (behaviourFaceMainPlayer)
                    {
                        BaseObjectData targetBaseObjectData = GameLevelData.Instance.FindGameObject((string)_list[2]);
                        m_playerToFace = targetBaseObjectData.Character;
                    }
                    else
                    {
                        m_playerToFace = null;
                    }
                }
            }
#endif
            if (_nameEvent == NetworkEventController.EVENT_SYSTEM_INITIALITZATION_REMOTE_COMPLETED)
            {
                if (m_initialData != null)
                {
                    if (m_initialData.Length > 0)
                    {
                        NetworkEventController.Instance.PriorityDelayNetworkEvent(NetworkEventController.EVENT_WORLDOBJECTCONTROLLER_INITIAL_DATA, 1, NetworkID.GetID(), m_initialData);
                    }
                }
            }
            if (_nameEvent == EVENT_GAMEPLAYER_CREATED_NEW)
            {
                GameObject newPlayer = ((GameObject)_list[0]);
                if (newPlayer != null)
                {
                    if (newPlayer != this.gameObject)
                    {
                        if (NetworkID != null)
                        {
                            NetworkEventController.Instance.PriorityDelayNetworkEvent(NetworkEventController.EVENT_WORLDOBJECTCONTROLLER_INITIAL_DATA, 0.1f, NetworkID.GetID(), m_initialData);
                        }
                    }
                }
            }
            if ((_nameEvent == EVENT_GAMEPLAYER_HUMAN_DIRECTOR_NAME) || (_nameEvent == EVENT_GAMEPLAYER_HUMAN_SPECTATOR_NAME))
            {
                if (!DirectorMode)
                {
                    if (NetworkID != null)
                    {
                        NetworkEventController.Instance.PriorityDelayNetworkEvent(NetworkEventController.EVENT_WORLDOBJECTCONTROLLER_INITIAL_DATA, 0.1f, NetworkID.GetID(), m_initialData);
                    }
                }
            }
            if (_nameEvent == EVENT_GAMECHARACTER_NEW_ANIMATION)
            {
                if (!IsMine())
                {
                    if (GetModel() == null)
                    {
                        return;
                    }

                    if (NetworkID != null)
                    {
                        if ((NetworkID.NetID == int.Parse((string)_list[0])) && (NetworkID.UID == int.Parse((string)_list[1])))
                        {
                            int  newAnimation    = int.Parse((string)_list[2]);
                            bool isLoopAnimation = bool.Parse((string)_list[3]);
                            base.ChangeAnimation(newAnimation, isLoopAnimation);
                            if (m_ghostPlayer != null)
                            {
                                ChangeAnimation(m_ghostPlayer.transform, newAnimation, isLoopAnimation, true);
                            }
                        }
                    }
                }
            }
            if (_nameEvent == EVENT_GAMECHARACTER_NEW_STATE)
            {
                if (!IsMine())
                {
                    if (NetworkID != null)
                    {
                        if ((NetworkID.NetID == int.Parse((string)_list[0])) && (NetworkID.UID == int.Parse((string)_list[1])))
                        {
                            int newState = int.Parse((string)_list[2]);
                            base.ChangeState(newState);
                        }
                    }
                }
            }
        }
Beispiel #11
0
 public static void ReverseSelection <T>(this BaseObjectData <T> objectData)
     where T : BaseObjectData <T>
 {
     ChangeSelection(objectData, !objectData.IsSelected);
 }
Beispiel #12
0
 public override bool CanSerialize(BaseObjectData objectData)
 {
     bool isOK = typeof(LuaCustomObjectData) == objectData.GetType();
     return isOK;
 }
Beispiel #13
0
 public static void ChangeSelection <T>(this BaseObjectData <T> objectData, bool newSelection)
     where T : BaseObjectData <T>
 {
     (objectData as ISelectVisited).Accemp(Data, newSelection);
 }
Beispiel #14
0
 public static bool PaidObjectIncreasing <T>(this BaseObjectData <T> objectData)
     where T : BaseObjectData <T>
 {
     return((objectData as IPaidIncreaseObjectVisited).Accemp(Data));
 }
Beispiel #15
0
 public static bool PaidIncreasing <T>(this BaseObjectData <T> objectData)
     where T : BaseObjectData <T>
 {
     return(Data.PaidIncrease(objectData));
 }
Beispiel #16
0
 public static bool PaidOpen <T>(this BaseObjectData <T> objectData)
     where T : BaseObjectData <T>
 {
     return((objectData as IPaidOpenVisited).Accemp(Data));
 }
Beispiel #17
0
        public override void InitializeObject(BaseObjectData objectData)
        {
            CustomObjectData data = objectData as CustomObjectData;

            this.Write("local ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(" = ccui.CustomObject:create()\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":setCustomString(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.CustomString));

            this.Write(")\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":setValidTextBoxString(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.ValidTextBoxString));

            this.Write(")\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":setCustomInt(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.CustomInt));

            this.Write(")\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":setCustomDouble(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.CustomDouble));

            this.Write(")\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":setCustomFloat(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.CustomFloat));

            this.Write(")\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":setCustomBool(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.CustomBool));

            this.Write(")\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":setCustomEnum(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.CustomEnum));

            this.Write(")\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":setCustomColor(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.CustomColor));

            this.Write(")\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":setCustomScaleValue(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.CustomScaleValue));

            this.Write(")\r\n ");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.Name));

            this.Write(":CustomPointF(");

            this.Write(this.ToStringHelper.ToStringWithCulture(data.CustomPointF));

            this.Write(")\r\n");

            base.InitializeObject(data);
        }