diff options
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | src/CMakeLists.txt | 2 | ||||
-rw-r--r-- | src/Makefile.am | 2 | ||||
-rw-r--r-- | src/gui/magic.cpp | 94 | ||||
-rw-r--r-- | src/gui/magic.h | 78 | ||||
-rw-r--r-- | tmw.cbp | 4 |
6 files changed, 182 insertions, 0 deletions
@@ -6,6 +6,8 @@ * src/localplayer.cpp, src/localplayer.h, src/net/gameserver/player.cpp, src/net/gameserver/player.h, src/net/protocol.h: Added netcode for using special actions. + * src/CMakeLists.txt, src/Makefile.am, tmw.cbp: Updated project + files. 2008-11-01 Bjørn Lindeijer <bjorn@lindeijer.nl> diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 9f73a7a4..dc190f25 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -128,6 +128,8 @@ SET(SRCS gui/listbox.h gui/login.cpp gui/login.h + gui/magic.cpp + gui/magic.h gui/menuwindow.cpp gui/menuwindow.h gui/minimap.cpp diff --git a/src/Makefile.am b/src/Makefile.am index af7ed48d..de028f8e 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -80,6 +80,8 @@ tmw_SOURCES = gui/widgets/dropdown.cpp \ gui/listbox.h \ gui/login.cpp \ gui/login.h \ + gui/magic.cpp \ + gui/magic.h \ gui/menuwindow.cpp \ gui/menuwindow.h \ gui/minimap.cpp \ diff --git a/src/gui/magic.cpp b/src/gui/magic.cpp new file mode 100644 index 00000000..28e7de92 --- /dev/null +++ b/src/gui/magic.cpp @@ -0,0 +1,94 @@ +/*
+ * 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
+ *
+ * $Id: skill.cpp 4569 2008-09-04 20:09:57Z b_lindeijer $
+ */
+
+#include <guichan/widgets/label.hpp>
+#include <guichan/widgets/container.hpp>
+
+#include "magic.h"
+
+#include "button.h"
+
+#include "../localplayer.h"
+
+#include "../utils/dtor.h"
+#include "../utils/tostring.h"
+#include "../utils/gettext.h"
+
+MagicDialog::MagicDialog():
+ Window(_("Magic"))
+{
+ setCloseButton(true);
+ setDefaultSize(255, 25, 175, 225);
+
+ gcn::Button *spellButton1 = new Button(_("Cast Test Spell 1"), "spell_1", this);
+ gcn::Button *spellButton2 = new Button(_("Cast Test Spell 2"), "spell_2", this);
+ gcn::Button *spellButton3 = new Button(_("Cast Test Spell 3"), "spell_3", this);
+
+ spellButton1->setPosition(10, 30);
+ spellButton2->setPosition(10, 60);
+ spellButton3->setPosition(10, 90);
+
+ add(spellButton1);
+ add(spellButton2);
+ add(spellButton3);
+
+ update();
+
+ setLocationRelativeTo(getParent());
+ loadWindowState(_("Magic"));
+}
+
+MagicDialog::~MagicDialog()
+{
+}
+
+void MagicDialog::action(const gcn::ActionEvent &event)
+{
+ if (event.getId() == "spell_1")
+ {
+ player_node->useSpecial(1);
+ }
+ if (event.getId() == "spell_2")
+ {
+ player_node->useSpecial(2);
+ }
+ if (event.getId() == "spell_3")
+ {
+ player_node->useSpecial(3);
+ }
+ else if (event.getId() == "close")
+ {
+ setVisible(false);
+ }
+}
+
+void MagicDialog::draw(gcn::Graphics *g)
+{
+ update();
+
+ Window::draw(g);
+}
+
+void MagicDialog::update()
+{
+}
diff --git a/src/gui/magic.h b/src/gui/magic.h new file mode 100644 index 00000000..a8082755 --- /dev/null +++ b/src/gui/magic.h @@ -0,0 +1,78 @@ +/*
+ * 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
+ *
+ * $Id: skill.h 4476 2008-08-18 01:23:58Z rhoderyc $
+ */
+
+#ifndef _TMW_MAGIC_H
+#define _TMW_MAGIC_H
+
+#include <guichan/actionlistener.hpp>
+
+#include "window.h"
+#include "gccontainer.h"
+
+#include "../guichanfwd.h"
+
+
+
+/**
+ * The skill dialog.
+ *
+ * \ingroup Interface
+ */
+class MagicDialog : public Window, public gcn::ActionListener
+{
+ public:
+ /**
+ * Constructor.
+ */
+ MagicDialog();
+
+ /**
+ * Destructor.
+ */
+ ~MagicDialog();
+
+ /**
+ * Called when receiving actions from widget.
+ */
+ void action(const gcn::ActionEvent &event);
+
+ /**
+ * Update the tabs in this dialog
+ */
+ void update();
+
+ /**
+ * Draw this window.
+ */
+ void draw(gcn::Graphics *g);
+
+ private:
+
+};
+
+
+
+
+extern MagicDialog *magicDialog;
+
+#endif
@@ -256,6 +256,10 @@ <Unit filename="src/gui/login.h"> <Option target="default" /> </Unit> + <Unit filename="src/gui/magic.cpp" /> + <Unit filename="src/gui/magic.h"> + <Option target="default" /> + </Unit> <Unit filename="src/gui/menuwindow.cpp" /> <Unit filename="src/gui/menuwindow.h"> <Option target="default" /> |