summaryrefslogtreecommitdiff
path: root/src/gui/newskill.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/newskill.cpp')
-rw-r--r--src/gui/newskill.cpp193
1 files changed, 0 insertions, 193 deletions
diff --git a/src/gui/newskill.cpp b/src/gui/newskill.cpp
deleted file mode 100644
index 20fc01bd..00000000
--- a/src/gui/newskill.cpp
+++ /dev/null
@@ -1,193 +0,0 @@
-/*
- * The Mana World
- * Copyright 2004 The Mana World Development Team
- *
- * This file is part of The Mana World.
- *
- * The Mana World is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * any later version.
- *
- * The Mana World is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with The Mana World; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
- /* This file implements the new skill dialog for use under the latest
- * version of the skill system as of 2005/02/20
- */
-
-#include "newskill.h"
-
-#include <guichan/widgets/label.hpp>
-
-#include "button.h"
-#include "progressbar.h"
-
-#include "../graphics.h"
-
-const char *skill_name[] = {
- // 0-99
- // weapon skills 0-9
- "Short Blades", "Long Blades", "Hammers", "Archery", "Whip",
- "Staves", "Throwing", "Piercing", "Hand to Hand", NULL,
- // magic skills 10-19
- "Epyri (Fire)", "Merene (Water)", "Geon (Earth)", "Izurial (Air)",
- "Lumine (Light)", "Tenebrae (Dark)", "Chronos (Time)", "Teless (Space)",
- "Gen (Mana)", NULL,
- // craft skills 20-29
- "Metalworking", "Woodworking", "Jeweler", "Cook", "Tailor",
- "Alchemist", "Artisan", "Synthesis", NULL, NULL,
- // general skills 30-39
- "Running", "Searching", "Sneak", "Trading", "Intimidate",
- "Athletics", NULL, NULL, NULL,NULL,
- // combat skills 40-49
- "Dodge", "Accuracy", "Critical", "Block", "Parry", "Diehard", "Magic Aura",
- "Counter", NULL, NULL,
- // resistance skills 50-59
- "Poison", "Silence", "Petrify", "Paralyze", "Blind", "Slow", "Zombie",
- "Critical", NULL, NULL,
- // element reistance 60-69
- "Heat (Fire)", "Chill (Water)", "Stone (Earth)", "Wind (Air)",
- "Shine (Light)", "Shadow (Dark)", "Decay (Time)", "Chaos (Space)", NULL,
- NULL,
- // hunting skills 70-79
- "Insects", "Birds", "Lizards", "Amorphs", "Undead", "Machines", "Arcana",
- "Humanoids", "Plantoids", NULL,
- // stats 80-89
- "Strength", "Fortitude", "Vitality", "Menality", "Awareness", "Mana",
- "Dexterity", NULL, NULL, NULL,
- // unused (reserved) 90-99
- NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL
-};
-
-
-NewSkillDialog::NewSkillDialog():
- Window("Skills")
-{
- startPoint = 0;
- for (int i = 0; i < N_SKILL_CAT_SIZE; i++)
- {
- mSkillLabel[i] = new gcn::Label("Empty ");
- mSkillLevel[i] = new gcn::Label("00000");
- mSkillbar[i] = new ProgressBar(0.0f,100,15,0,0,255);
- mSkillLevel[i]->setAlignment(Graphics::RIGHT);
- add(mSkillLabel[i],40,5+i*25);
- add(mSkillLevel[i],150,5+i*25);
- add(mSkillbar[i],180,5+i*25);
- }
- // initialize the skills
- for (int i = 0; i < N_SKILL; i++)
- {
- mPlayerSkill[i].level = 0;
- mPlayerSkill[i].exp = 0;
- }
- resetNSD();
-
- // create controls
- Button *catButton[N_SKILL_CAT];
- catButton[0] = new Button("Weapons", "g1", this);
- catButton[1] = new Button("Magic", "g2", this);
- catButton[2] = new Button("Craft", "g3", this);
- catButton[3] = new Button("General", "g4", this);
- catButton[4] = new Button("Combat", "g5", this);
- catButton[5] = new Button("E. Resist", "g6", this);
- catButton[6] = new Button("S. Resist", "g7", this);
- catButton[7] = new Button("Hunting", "g8", this);
- catButton[8] = new Button("Stat", "g9", this);
-
- setContentSize(350, 250);
-
- for (int i = 0; i < 9; ++i) {
- catButton[i]->setDimension(gcn::Rectangle(0, 0, 60, 20));
- catButton[i]->setPosition(290, 20 * i);
- add(catButton[i]);
- }
-
- Button *closeButton = new Button("Close", "close", this);
- closeButton->setDimension(gcn::Rectangle(0,0,60,20));
- closeButton->setPosition(290, 230);
- add(closeButton);
-
- // finsihing touches
- setLocationRelativeTo(getParent());
-}
-
-void NewSkillDialog::action(const gcn::ActionEvent &event)
-{
- int osp = startPoint;
- if (event.getId() == "close")
- {
- setVisible(false);
- }
- else if (event.getId() == "g1") // weapons group 0-9
- {
- startPoint =0;
- }
- else if (event.getId() == "g2") // magic group 10-19
- {
- startPoint =10;
- }
- else if (event.getId() == "g3") // craft group 20-29
- {
- startPoint =20;
- }
- else if (event.getId() == "g4") // general group 30-39
- {
- startPoint =30;
- }
- else if (event.getId() == "g5") // combat group 40-49
- {
- startPoint =40;
- }
- else if (event.getId() == "g6") // e. resist group 50-59
- {
- startPoint =50;
- }
- else if (event.getId() == "g7") // s resist group 60-69
- {
- startPoint =60;
- }
- else if (event.getId() == "g8") // hunting group 70-79
- {
- startPoint =70;
- }
- else if (event.getId() == "g9") // stats group 80-89
- {
- startPoint =80;
- }
- if (osp != startPoint)
- {
- resetNSD();
- }
-}
-
-void NewSkillDialog::resetNSD()
-{
- for (int a = 0; a < N_SKILL_CAT_SIZE; a++)
- {
- if (skill_name[a + startPoint])
- {
- mSkillLabel[a]->setCaption(skill_name[a + startPoint]);
- mSkillLabel[a]->setVisible(true);
- char tmp[5];
- sprintf(tmp, "%d", mPlayerSkill[a+startPoint].level);
- mSkillLevel[a]->setCaption(tmp);
- mSkillLevel[a]->setVisible(true);
- mSkillbar[a]->setProgress(0.0f);
- mSkillbar[a]->setVisible(true);
- }
- else
- {
- mSkillLevel[a]->setVisible(false);
- mSkillLabel[a]->setVisible(false);
- mSkillbar[a]->setVisible(false);
- }
- }
-}