public MainWindow()
    {
        InitializeComponent();

        ActualStatus = new StatusStruct(StatusChanged); // Initial State: no flags are set;
                                                        // Initial state:
                                                        // ActualStatus.SetFlags(StatusFlags.SourceHasFilename, false);
                                                        // ActualStatus.SetFlags(StatusFlags.ResultAvailable, false);
                                                        // ActualStatus.SetFlags(StatusFlags.SourceNotEmpty, false);
                                                        // ActualStatus.SetFlags(StatusFlags.SourceTextChanged, false);
                                                        // ActualStatus.SetFlags(StatusFlags.SourceTextChangedSinceLastTranslate, false);

        // new StatusStruct(StatusChanged) calls StatusChanged
        // StatusChanged () enables/disables menu items

        Title = "grammlator - no file -";
        // Set handler to focus one of the textboxes by OnFocusTextbox
        FocusTextBox += HandleFocusTextBox;
        // and focus the SourceTextbox
        OnFocusTextBox(new FocusTextBoxEventArgs(SourceTextBox));

        // Set InitialDirectory to avoid the directory containing the assembly as default initial directory
        string RecentDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Recent);

        SaveSourceOrResultDialog.InitialDirectory = RecentDirectory;
        OpenSourceFileDialog.InitialDirectory     = RecentDirectory;

        MainUserInterfaceMethods.SetExampleMenus(MenuItemDisplayExample, this, "GrammlatorExamples.zip");
    }
Exemple #2
0
    private Status StatusStructToClass(StatusStruct curStatus)
    {
        Status status = new Status();

        status.id               = curStatus.id;
        status.statusName       = curStatus.statusName;
        status.description      = curStatus.description;
        status.value            = curStatus.value;
        status.duration         = curStatus.duration;
        status.priority         = curStatus.priority;
        status.statusType       = curStatus.statusType;
        status.effectType       = curStatus.effectType;
        status.applicationTime  = curStatus.applicationTime;
        status.schoolType       = curStatus.schoolType;
        status.hidden           = curStatus.hidden;
        status.additionalStatus = curStatus.additionalStatus;
        return(status);
    }
Exemple #3
0
    private StatusStruct StatusClassToStruct(Status status)
    {
        StatusStruct curStatus = new StatusStruct();

        curStatus.id               = status.id;
        curStatus.statusName       = status.statusName;
        curStatus.description      = status.description;
        curStatus.value            = status.value;
        curStatus.duration         = status.duration;
        curStatus.priority         = status.priority;
        curStatus.statusType       = status.statusType;
        curStatus.effectType       = status.effectType;
        curStatus.applicationTime  = status.applicationTime;
        curStatus.schoolType       = status.schoolType;
        curStatus.hidden           = status.hidden;
        curStatus.additionalStatus = status.additionalStatus;
        return(curStatus);
    }
        public HUDStatus(PlayerHUD parent)
            : base()
        {
            ContentManager Content = GameManager.TheGameManager.Content;
            this.Font = Content.Load<SpriteFont>(Path.Fonts + "Moire");
            this.SmallFont = Content.Load<SpriteFont>(Path.Fonts + "MoireSmall");

            this.Area = new Rectangle(
                parent.outerRect.X,
                parent.outerRect.Y,
                200,
                80);

            Status = new Dictionary<StatusType, StatusStruct>();

            StatusStruct HPStruct= new StatusStruct();
            HPStruct.BarTexture = Content.Load<Texture2D>(Path.Textures.Misc + "hpbar");
            HPStruct.BarWidth = 496;
            HPStruct.Bar = new Rectangle(
                Area.X + 243,
                Area.Y + 17,
                (int)HPStruct.BarWidth,
                12);
            HPStruct.Text = "";

            HPStruct.Position = new Vector2(Area.X + 235, Area.Y + 9);

            Status.Add(StatusType.HP, HPStruct);

            StatusStruct RPStruct = new StatusStruct();
            RPStruct.BarTexture = Content.Load<Texture2D>(Path.Textures.Misc + "rpbar");
            RPStruct.BarWidth = 496;
            RPStruct.Bar = new Rectangle(
                Area.X + 243,
                Area.Y + 40,
                (int)RPStruct.BarWidth,
                12);
            RPStruct.Text = "";

            RPStruct.Position = new Vector2(Area.X + 235, Area.Y + 32);

            Status.Add(StatusType.RP, RPStruct);
        }
    void Awake()
    {
        DontDestroyOnLoad(this.gameObject);

        //Singleton
        if (uniqueInstance == null)
            uniqueInstance = this;
        else
            Destroy(this.gameObject);

        //Datas.
        Status = new StatusStruct[32];
        Status[0] = new StatusStruct(0, 10000.0f, 10000.0f, 1, 2);
        Status[1] = new StatusStruct(1, 100.0f, 10.0f, 0, 0);
        Status[2] = new StatusStruct(2, 120.0f, 10.0f, 20, 20);
        for (int i = 3; i < 31; i++)
        {
            float tmaxHP, tdamage;
            int tneedEXP, tneedEXPSum;
            //tmaxHP
            if (i <= 10)
            {
                tmaxHP = Status[i - 1].maxHP + 20;
            }
            else if (i <= 20)
            {
                tmaxHP =  Status[i - 1].maxHP + 20;
            }
            else
            {
                tmaxHP =  Status[i - 1].maxHP + 20;
            }
            //tdamage
            if (i <= 9)
            {
                tdamage = Status[i - 1].damage;
            }
            else if (i <= 19)
            {
                tdamage = Status[i - 1].damage;
            }
            else
            {
                tdamage = 2 * Status[i - 1].damage - Status[i - 2].damage ;
            }
            //tneedEXP
            if (i <= 10)
            {
                tneedEXP = 2 * Status[i - 1].needEXP - Status[i - 2].needEXP + 20;
            }
            else if (i <= 19)
            {
                tneedEXP = 2 * Status[i - 1].needEXP - Status[i - 2].needEXP + 40;
            }
            else
            {
                tneedEXP = 2 * Status[i - 1].needEXP - Status[i - 2].needEXP + 60;
            }
            //tneedEXPSum
            tneedEXPSum = 0;
            for (int j = 1; j < i; j++)
                tneedEXPSum += Status[j].needEXP;
            tneedEXPSum += tneedEXP;
            Status[i] = new StatusStruct(i, tmaxHP, tdamage, tneedEXP, tneedEXPSum);

            Status[31] = new StatusStruct(31, 5000, 2000, 15000, 130000);
        }
        //Datas End.
    }