Beispiel #1
0
        internal override bool Artifacts(int index)
        {
            if (CPlayerState == -1)
            {
                return(false);
            }
            if (index < 0)
            {
                throw new Exception("Index can't be negative");
            }
            switch (index)
            {
            case 0:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_TRUTH_OBTAINED) > 0);

            case 1:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_STRENGTH_OBTAINED) > 0);

            case 2:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_ELDER_OBTAINED) > 0);

            case 3:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_WILD_OBTAINED) > 0);

            case 4:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_LIFEGIVER_OBTAINED) > 0);

            case 5:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_WARRIOR_OBTAINED) > 0);

            case 6:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_CHOZO_OBTAINED) > 0);

            case 7:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_NATURE_OBTAINED) > 0);

            case 8:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_SUN_OBTAINED) > 0);

            case 9:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_WORLD_OBTAINED) > 0);

            case 10:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_SPIRIT_OBTAINED) > 0);

            case 11:
                return(Dolphin.ReadUInt32(CPlayerState + OFF_ARTIFACT_OF_NEWBORN_OBTAINED) > 0);

            default:
                throw new Exception("There are no artifacts past the 12th artifact");
            }
        }