132 lines
11 KiB
Ada
132 lines
11 KiB
Ada
-- Copyright (c) 2024 - Ognjen 'xolatile' Milan Robovic
|
|
--
|
|
-- GNU General Public Licence (version 3 or later)
|
|
|
|
with core, effect;
|
|
|
|
package might is
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
type school is (
|
|
neutral, archery, defense, economy, education, logistics,
|
|
offense, tactics
|
|
);
|
|
|
|
type enumeration is (
|
|
-- Neutral
|
|
-- Archery
|
|
cover, evasive_maneuvers, focused_fire, magic_ammunition, piercing_bolt, precision,
|
|
retreat, taunt,
|
|
-- Defense
|
|
charismatic_leader, counterstrike, double_counterstrike, resilience, revenge, shield_of_the_virtue,
|
|
stand_your_ground_mass, stand_your_ground, toughness,
|
|
-- Economy
|
|
banker, destroyer, leadership, lumber, manager, merchant,
|
|
miner, plunderer, snatch,
|
|
-- Education
|
|
alchemist, architect, ballistics, chosen_one, diplomacy, economist,
|
|
general, mentor, siege_master,
|
|
-- Logistics
|
|
explorer, navigation, observer, orientation, pathfinder, scout,
|
|
spy, trust_the_plan,
|
|
-- Offense
|
|
assailant, battle_march, cleave, flawless_attack, giant_slayer, heroic_charge,
|
|
parry, pressed_attack, rampage,
|
|
-- Tactics
|
|
ambush, commander, crippling_traps, diving_attack, heroism_mass, heroism,
|
|
intimidation, reinforcements
|
|
);
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
subtype level_limit is natural range 0 .. 6;
|
|
|
|
type information is record
|
|
name : core.short_string;
|
|
kind : school;
|
|
level : level_limit;
|
|
evoke : effect.enumeration;
|
|
text : core.long_string;
|
|
end record;
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
count : constant natural := enumeration'pos (enumeration'last) + 1;
|
|
|
|
trait : constant array (enumeration) of information := (
|
|
("Cover ", archery, 0, effect.none, "Provides temporary protection from enemy attacks. "),
|
|
("Evasive Maneuvers ", archery, 0, effect.none, "Allows the user to dodge and avoid incoming attacks more effectively. "),
|
|
("Focused Fire ", archery, 0, effect.none, "Increases accuracy and damage output towards a single target. "),
|
|
("Magic Ammunition ", archery, 0, effect.none, "Enchants projectiles with magical properties for more effectiveness. "),
|
|
("Piercing Bolt ", archery, 0, effect.none, "Ability to penetrate enemy defenses and deal damage directly. "),
|
|
("Precision ", archery, 0, effect.none, "Enhances accuracy and critical hit chance. "),
|
|
("Retreat ", archery, 0, effect.none, "Allows the user to disengage from combat safely. "),
|
|
("Taunt ", archery, 0, effect.none, "Draws enemy aggression towards the user, redirecting their attacks. "),
|
|
("Charismatic Leader ", defense, 0, effect.none, "Boosts the morale and efficiency of allies in the vicinity. "),
|
|
("Counterstrike ", defense, 0, effect.none, "Automatically retaliates against incoming attacks with a counter-attack."),
|
|
("Double Counterstrike ", defense, 0, effect.none, "Further enhances the counter-attacking ability, allowing for more hits. "),
|
|
("Resilience ", defense, 0, effect.none, "Provides increased resistance to status effects and damage. "),
|
|
("Revenge ", defense, 0, effect.none, "Empowers the user after taking damage, increasing their offense. "),
|
|
("Shield Of The Virtue ", defense, 0, effect.none, "Provides a powerful defensive barrier to protect the user and allies. "),
|
|
("Stand Your Ground Mass ", defense, 0, effect.none, "Grants a defensive buff to multiple allied units within a large radius. "),
|
|
("Stand Your Ground ", defense, 0, effect.none, "Enhances the user's defenses and resilience against incoming attacks. "),
|
|
("Toughness ", defense, 0, effect.none, "Increases overall durability and reduces incoming damage. "),
|
|
("Banker ", economy, 0, effect.none, "Generates additional in-game currency or resources over time. "),
|
|
("Destroyer ", economy, 0, effect.none, "Deals massive damage to enemies or structures. "),
|
|
("Leadership ", economy, 0, effect.none, "Boosts the effectiveness and performance of allied units. "),
|
|
("Lumber ", economy, 0, effect.none, "Increases resource gathering efficiency for wood or similar materials. "),
|
|
("Manager ", economy, 0, effect.none, "Improves resource management and production within the user's faction. "),
|
|
("Merchant ", economy, 0, effect.none, "Enables better trading opportunities and increased profit from commerce."),
|
|
("Miner ", economy, 0, effect.none, "Enhances resource gathering efficiency for minerals or ore. "),
|
|
("Plunderer ", economy, 0, effect.none, "Steals resources or valuable items from enemies upon defeating them. "),
|
|
("Snatch ", economy, 0, effect.none, "Allows the user to quickly grab and steal an item or resource. "),
|
|
("Alchemist ", education, 0, effect.none, "Enables the user to create and utilize powerful potions or poisons. "),
|
|
("Architect ", education, 0, effect.none, "Improves construction speed and efficiency for buildings and structures."),
|
|
("Ballistics ", education, 0, effect.none, "Enhances ranged attacks and projectile-based abilities. "),
|
|
("Chosen One ", education, 0, effect.none, "Empowers the user with random unique and potent abilities. "),
|
|
("Diplomacy ", education, 0, effect.none, "Strengthens diplomatic relations and opportunities with other factions. "),
|
|
("Economist ", education, 0, effect.none, "Boosts resource management and economic prowess within the domain. "),
|
|
("General ", education, 0, effect.none, "Provides strategic advantages and boosts the effectiveness of troops. "),
|
|
("Mentor ", education, 0, effect.none, "Offers guidance to allied units, enhancing their performance. "),
|
|
("Siege Master ", education, 0, effect.none, "Specializes in siege warfare, increasing the range of siege machines. "),
|
|
("Explorer ", logistics, 0, effect.none, "Improves scouting abilities and grants bonuses to discovering. "),
|
|
("Navigation ", logistics, 0, effect.none, "Enhances movement speed or efficiency across different terrains. "),
|
|
("Observer ", logistics, 0, effect.none, "Grants vision over specific areas or units, providing information. "),
|
|
("Orientation ", logistics, 0, effect.none, "Improves unit positioning and formation effectiveness in battle. "),
|
|
("Pathfinder ", logistics, 0, effect.none, "Provides bonuses to traversing difficult terrain or finding paths. "),
|
|
("Scout ", logistics, 0, effect.none, "Excels at reconnaissance and gathering intelligence on enemy movements. "),
|
|
("Spy ", logistics, 0, effect.none, "Infiltrates enemy territory to perform sabotage operations. "),
|
|
("Trust The Plan ", logistics, 0, effect.none, "Grants advantages when following predetermined strategies or tactics. "),
|
|
("Assailant ", offense, 0, effect.none, "Enhances offensive capabilities and increases damage dealt in fighting. "),
|
|
("Battle March ", offense, 0, effect.none, "Boosts movement speed and combat prowess for the troops on the front. "),
|
|
("Cleave ", offense, 0, effect.none, "Allows attacks to hit multiple foes or deal area-of-effect damage. "),
|
|
("Flawless Attack ", offense, 0, effect.none, "Enhances precision and accuracy of attacks, maximizing damage output. "),
|
|
("Giant Slayer ", offense, 0, effect.none, "Provides bonuses and advantages when engaging larger or stronger foes. "),
|
|
("Heroic Charge ", offense, 0, effect.none, "Allows for a powerful and impactful offensive maneuver against enemies. "),
|
|
("Parry ", offense, 0, effect.none, "Enables the user to block or deflect incoming attacks, reducing damage. "),
|
|
("Pressed Attack ", offense, 0, effect.none, "Boosts the intensity and frequency of offensive strikes during combat. "),
|
|
("Rampage ", offense, 0, effect.none, "Triggers a frenzied state, increasing attack power and speed shortly. "),
|
|
("Ambush ", tactics, 0, effect.none, "Enables surprise attacks on enemy units for increased effectiveness. "),
|
|
("Commander ", tactics, 0, effect.none, "Enhances leadership abilities and buffs allied units under the command. "),
|
|
("Crippling Traps ", tactics, 0, effect.none, "Utilizes various traps and devices to hinder or debilitate enemies. "),
|
|
("Diving Attack ", tactics, 0, effect.none, "Initiates a swift and decisive aerial assault from above. "),
|
|
("Heroism Mass ", tactics, 0, effect.none, "Inspires and empowers multiple units simultaneously with a morale boost."),
|
|
("Heroism ", tactics, 0, effect.none, "Bolsters morale and combat effectiveness of individual units. "),
|
|
("Intimidation ", tactics, 0, effect.none, "Strikes fear into enemies, reducing their morale and courage. "),
|
|
("Reinforcements ", tactics, 0, effect.none, "Calls in additional troops or support units to bolster the forces. ")
|
|
);
|
|
|
|
------------------------------------------------------------------------------------------
|
|
|
|
procedure configure;
|
|
|
|
procedure icon (index : in enumeration; x, y : in integer);
|
|
procedure view (index : in enumeration; x, y : in integer);
|
|
|
|
procedure menu (x, y : in integer; center : in boolean);
|
|
|
|
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
|
|
end might;
|