コード例 #1
0
    public void CommentedBy(NPC.NPCs npc)
    {
        SaveJson.ItemInfo[] infos = GameManager.GetInstance().GetCurrentSave().items;
        for (int i = 0; i < infos.Length; i++)
        {
            if (infos[i].id != info.id)
            {
                continue;
            }

            for (int j = 0; j < infos[i].npcSstatus.Length; j++)
            {
                if (infos[i].npcSstatus[j].npc == npc)
                {
                    infos[i].npcSstatus[j].status = Status.Commented;
                    if (npc == NPC.NPCs.AbilityGuy)
                    {
                        infos[i].isActive = true;
                        UIManager.GetInstance().ability.ObtainNewAbility(info.id);
                    }
                    GameManager.GetInstance().saveJson.saves[GameManager.GetInstance().saveIndex].items = infos;
                    break;
                }
            }
        }
    }
コード例 #2
0
    public GameItems CheckUpdate(NPC.NPCs npc)
    {
        foreach (GameItems id in System.Enum.GetValues(typeof(GameItems)))
        {
            if (items[id].checkUpdate(npc))
            {
                return(id);
            }
        }

        return(GameItems.NONE);
    }
コード例 #3
0
    public bool checkUpdate(NPC.NPCs npc)
    {
        if (!info.obtained)
        {
            return(false);
        }

        foreach (NPCStatus npcStatus in info.npcSstatus)
        {
            if ((npcStatus.npc == npc) && (npcStatus.status == Status.NotCommented))
            {
                return(true);
            }
        }
        return(false);
    }
コード例 #4
0
 public void CommentedBy(NPC.NPCs npc, Progress.GameItems id)
 {
     items[id].CommentedBy(npc);
 }