Ejemplo n.º 1
0
 public void CloseFlagModifier()
 {
     WhereFlagModifierOpened = new Point16(-1, -1);
     openedFlagModifier      = null;
     FlagModifierUI.CloseUI();
     Main.NewText("Closed Flag Modifier");
 }
Ejemplo n.º 2
0
 public void OpenFlagModifier(Point16 where, FlagModifier flagModifier)
 {
     if (player.talkNPC != -1 || player.sign != -1 || player.chest != -1)
     {
         player.talkNPC = player.sign = player.chest = -1;
     }
     WhereFlagModifierOpened = where;
     openedFlagModifier      = flagModifier;
     FlagModifierUI.OpenUI(openedFlagModifier.currentFlag);
     Main.NewText("Opened flag modifier at " + where.X + ", " + where.Y);
 }
Ejemplo n.º 3
0
    public void GenerateFlagModifier(Block block, string flagInformations, int cyclesRemaining)
    {
        string[] flagElements = flagInformations.Split(new char[] { '_' }, System.StringSplitOptions.RemoveEmptyEntries);
        bool     flagFound    = false;

        foreach (Flag.IFlag flags in block.activeFlags)
        {
            if (flags.GetFlagType() == System.Type.GetType(flagElements[0]))
            {
                flagFound = true;
            }
        }
        if (!flagFound)
        {
            return;
        }
        FlagModifier newFlagModifier = new FlagModifier();

        newFlagModifier.cyclesRemaining  = cyclesRemaining;
        newFlagModifier.flagInformations = flagInformations;
        //Apply the flag modification
        GameManager.instance.flagReader.ReadFlag(block, flagInformations);
        block.flagModifiers.Add(newFlagModifier);
    }