You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <cstddef>
|
|
|
|
|
#include <vector>
|
|
|
|
|
|
|
|
|
|
#include "engine/point.hpp"
|
|
|
|
|
#include "engine/surface.hpp"
|
|
|
|
|
#include "spelldat.h"
|
|
|
|
|
|
|
|
|
|
namespace devilution {
|
|
|
|
|
|
|
|
|
|
struct SpellListItem {
|
|
|
|
|
Point location;
|
|
|
|
|
SpellType type;
|
|
|
|
|
SpellID id;
|
|
|
|
|
bool isSelected;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
void DrawSpell(const Surface &out);
|
|
|
|
|
void DrawSpellList(const Surface &out);
|
|
|
|
|
std::vector<SpellListItem> GetSpellListItems();
|
|
|
|
|
void SetSpell();
|
|
|
|
|
void SetSpeedSpell(size_t slot);
|
|
|
|
|
void ToggleSpell(size_t slot);
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Draws the "Speed Book": the rows of known spells for quick-setting a spell that
|
|
|
|
|
* show up when you click the spell slot at the control panel.
|
|
|
|
|
*/
|
|
|
|
|
void DoSpeedBook();
|
|
|
|
|
|
|
|
|
|
} // namespace devilution
|