Inheritance: MonoBehaviour
示例#1
0
    void Start()
    {
        trig     = GameObject.Find("StoryElement").GetComponent <StoryTrigger>();
        triggers = GameObject.FindGameObjectsWithTag("storypad");

        abcTriggerGroup = GameObject.Find("ABCTriggerGroup").GetComponent <TriggerGroupBehaviour>();
        gate            = GameObject.Find("Gateway").GetComponent <GateBehavior>();
        targets         = GameObject.Find("Targets").GetComponent <TargetGroupBehavior>();
        trap            = GameObject.Find("TrapWall").GetComponent <TrapBehaviour>();

        // these are used to refer the index of each trigger
        abcTriggers = new char[] { 'A', 'B', 'C' };

        gate         = GameObject.Find("Gateway").GetComponent <GateBehavior>();
        targets      = GameObject.Find("Targets").GetComponent <TargetGroupBehavior>();
        nextRoom     = GameObject.Find("NextRoom").GetComponent <NextRoomBehaviour>();
        nextRoomDoor = GameObject.Find("NextRoomDoor").GetComponent <NextRoomDoorBehaviour>();


        bll = GameObject.Find("Ball").GetComponent <BallBehaviour>();

        print("bll " + bll);
        print("abc  " + abcTriggerGroup);

        tasktext.text = "Task: Hit a story panel."; // Set initial task text
    }
    public override void Compare(UnityEngine.Object obj)
    {
        StoryTrigger sTrigger = (StoryTrigger)obj;

        if (sTrigger.gameObject.name.Contains(sTriggerName))
        {
            value++;
        }
    }
示例#3
0
    public void SetTriggerValue(string path, object value)
    {
        string strTrigger = GetUntilOrEmpty(path, "/");
        string strPart    = path.Replace(strTrigger, "");

        strPart = strPart.Trim('/');
        StoryTrigger st = StringToStoryTrigger(strTrigger);

        st.SetTriggerValue(strPart, value);
    }
示例#4
0
    public object GetTriggerValue(string path)
    {
        string strTrigger = GetUntilOrEmpty(path, "/");
        string strPart    = path.Replace(strTrigger, "");

        strPart = strPart.Trim('/');
        StoryTrigger st = StringToStoryTrigger(strTrigger);

        return(st.GetTriggerValue(strPart));
    }
示例#5
0
 private void OnEnable()
 {
     storyTrigger = (StoryTrigger)target;
     scene        = serializedObject.FindProperty("triggerParts");
     list         = new ReorderableList(serializedObject, scene)
     {
         displayAdd         = true,
         displayRemove      = true,
         draggable          = true,
         drawHeaderCallback = rect =>
         {
             EditorGUI.LabelField(rect, storyTrigger.name);
         },
         drawElementCallback   = DrawListItems,
         elementHeightCallback = ElementHeightCallback
     };
     index = 0;
     //scene = new PropertyField(property.FindPropertyRelative("newScene");
 }
示例#6
0
    private void OnCollisionEnter2D(Collision2D collision)
    {
        CollectAble collectAble = collision.gameObject.GetComponent <CollectAble>();

        if (collectAble != null)
        {
            Destroy(collectAble.gameObject);
            collectCount++;
        }

        StoryTrigger storyTrigger = collision.gameObject.GetComponent <StoryTrigger>();

        if (storyTrigger != null)
        {
            if (!storyTrigger.Hit)
            {
                Listening(storyTrigger.GetSelectedAudioClip().length);
                storyTrigger.Hit = true;
            }
        }
    }
示例#7
0
 // 開始時執行
 public override void OnEnter()
 {
     storyTrigger             = Trigger.GetComponent <StoryTrigger>();
     storyTrigger.haveMission = haveMission;
     Continue();
 }
示例#8
0
 public bool StoryUnknown(StoryTrigger story)
 {
     return(!knownStories.Contains(story));
 }
    public bool LoadGame()
    {
        GameData gameData = SaveSystem.LoadGameData();

        if (gameData != null)
        {
            //Beginning load
            isLoading = true;
            if (sr.battleSetup.InBattle)
            {
                sr.battleSetup.ExitBattleState();
            }
            sr.battleSetup.InCutscene = false;
            sr.battleSetup.gamePaused = false;
            sr.battleSetup.ForceEndCutscene();
            sr.battleSetup.choiceOpen      = false;
            sr.battleSetup.dialogueBoxNext = false;
            sr.battleSetup.dialogueBoxOpen = false;

            sr.canvasCollection.CloseState(CanvasCollection.UIState.MainMenu);
            sr.canvasCollection.CloseState(CanvasCollection.UIState.Options);
            sr.canvasCollection.MenuPanelOpen    = false;
            sr.canvasCollection.OptionsPanelOpen = false;


            //Perform Clean-up
            sr.battleSetup.DestroyAllChildLunen();

            //Load standard variables
            sr.battleSetup.GuidList = gameData.GuidList;

            //Give the player all their items
            sr.inventory.listOfItems.Clear();
            foreach (GameData.InventoryItem a in gameData.InventoryItems)
            {
                sr.inventory.listOfItems.Add(new Inventory.InventoryEntry(sr.database.IndexToItem(a.itemIndex), a.itemAmount));
            }

            sr.inventory.gold = gameData.gold;

            //Restore Save Triggers
            foreach (GameData.TriggerSet triggerSet in gameData.SaveTriggers)
            {
                StoryTrigger st = sr.database.StringToStoryTrigger(triggerSet.setName);
                foreach (GameData.TriggerSave save in triggerSet.triggerParts)
                {
                    switch (save.triggerType)
                    {
                    case TriggerTypes.Bool: st.SetTriggerValue(save.triggerTITLE, save.triggerBool); break;

                    case TriggerTypes.Int: st.SetTriggerValue(save.triggerTITLE, save.triggerInt); break;

                    case TriggerTypes.Float: st.SetTriggerValue(save.triggerTITLE, save.triggerFloat); break;

                    case TriggerTypes.Double: st.SetTriggerValue(save.triggerTITLE, save.triggerDouble); break;

                    case TriggerTypes.String: st.SetTriggerValue(save.triggerTITLE, save.triggerString); break;
                    }
                }
            }

            //Then give the player all their lunen
            foreach (GameData.PlayerLunen pl in gameData.PlayerTeam)
            {
                sr.battleSetup.PlayerLunenTeam.Add(GeneratePlayerLunen(pl));
            }
            sr.storageSystem.StoredLunen = gameData.StorageLunen;
            sr.director.LoadTeams();

            sr.battleSetup.lastOverworld = gameData.currentScene;
            Debug.Log(gameData.currentScene);

            //Get respawn variables
            sr.battleSetup.respawnLocation  = new Vector2(gameData.respawnX, gameData.respawnY);
            sr.battleSetup.respawnScene     = gameData.respawnScene;
            sr.battleSetup.respawnDirection = (MoveScripts.Direction)gameData.respawnDirection;

            //Preparing player position, area, and facing direction
            sr.battleSetup.NewOverworldAt(sr.battleSetup.lastOverworld, new Vector2(gameData.positionX, gameData.positionY), (MoveScripts.Direction)gameData.facingDirection);

            return(true);
        }
        return(false);
    }