예제 #1
0
        public MagicFountainAddon(bool sandstone)
        {
            int itemID;

            if (sandstone)
            {
                itemID = 0x19C3;                 // sandstone
            }
            else
            {
                itemID = 0x1731;                 // stone
            }
            AddComponent(new MagicFountainPiece(this, itemID++), -2, +1, 0);
            AddComponent(new MagicFountainPiece(this, itemID++), -1, +1, 0);
            AddComponent(new MagicFountainPiece(this, itemID++), +0, +1, 0);
            AddComponent(new MagicFountainPiece(this, itemID++), +1, +1, 0);

            AddComponent(new MagicFountainPiece(this, itemID++), +1, +0, 0);
            AddComponent(new MagicFountainPiece(this, itemID++), +1, -1, 0);
            AddComponent(new MagicFountainPiece(this, itemID++), +1, -2, 0);

            AddComponent(new MagicFountainPiece(this, itemID++), +0, -2, 0);
            AddComponent(new MagicFountainPiece(this, itemID++), +0, -1, 0);
            AddComponent(new MagicFountainPiece(this, itemID++), +0, +0, 0);

            AddComponent(new MagicFountainPiece(this, itemID++), -1, +0, 0);
            AddComponent(new MagicFountainPiece(this, itemID++), -2, +0, 0);

            AddComponent(new MagicFountainPiece(this, itemID++), -2, -1, 0);
            AddComponent(new MagicFountainPiece(this, itemID++), -1, -1, 0);

            AddComponent(new MagicFountainPiece(this, itemID++), -1, -2, 0);
            AddComponent(new MagicFountainPiece(this, ++itemID), -2, -2, 0);

            switch (Utility.RandomMinMax(1, 5))
            {
            case 1: m_MessageNum = FountainMessage.Cool; break;

            case 2: m_MessageNum = FountainMessage.Warm; break;

            case 3: m_MessageNum = FountainMessage.Clean; break;

            case 4: m_MessageNum = FountainMessage.Calm; break;

            case 5: m_MessageNum = FountainMessage.Fruit; break;
            }

            m_Magic = false;              // Must be set by a gamemaster or better to be magical
        }
예제 #2
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadInt();

            switch (version)
            {
            case 1: {
                m_Jackpot    = reader.ReadInt();
                m_MessageNum = (FountainMessage)reader.ReadInt();
                m_Magic      = reader.ReadBool();

                break;
            }
            }
        }