Skip to content

Commit

Permalink
updated to version 0.3.1
Browse files Browse the repository at this point in the history
added item: STEPHEN's HELMET
updated cutscene GANDRIA
added quest: STEPHEN's HELMET
added template for map: BARRACKS
removed door test tiles
  • Loading branch information
Ironbell committed Sep 17, 2016
1 parent ccc3aa0 commit a3f758b
Show file tree
Hide file tree
Showing 57 changed files with 1,156 additions and 553 deletions.
2 changes: 1 addition & 1 deletion cendric.ini
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ sound.volume.sound:100
# this is the sound volume (music) in percent (0 - 100)
sound.volume.music:100
# 1 for EN, 2 for DE, 3 for CH
language:3
language:1
# 1 for Window, 2 for Fullscreen, 3 for Windowed Fullscreen
displaymode:1
# 0 means quickcast off, 1 means quickcast on
Expand Down
Binary file modified db/game_data.db
Binary file not shown.
5 changes: 3 additions & 2 deletions db/insert_scripts/dialogue/insert_text_dl_npc_edgar_utf8.sql
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,6 @@ INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Edgar_Ironore', 'dl_npc_edgar', 'Thank you. Here is your pay.', 'Danke. Hier, dein Lohn.', 'Danke. Da, din Lohn.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Edgar_NotEnoughGold', 'dl_npc_edgar', 'You don''t have enough gold. Go and work a bit more.', 'Du hast nicht genügend Gold. Geh und arbeite noch ein bisschen.', 'Du hesch nid gnueg Gold. Gang na bitz go schaffe.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Edgar_YoureReleased', 'dl_npc_edgar', 'Okay, that''s enough.', 'Okay, das ist genug.', 'Guet, da isch gnueg.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Edgar_YoureReleased2', 'dl_npc_edgar', 'Here, you can have your old belongings back.', 'Hier hast du deine alten Habseligkeiten wieder.', 'Da hesch dini alte Sache wider.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Edgar_YoureReleased3', 'dl_npc_edgar', 'You''re free to go. I hope I won''t see you here again.', 'Du kannst jetzt gehen. Ich hoffe bloss, dass ich dich hier nie mehr sehen muss.', 'Du chasch ez ga. Ich hoff eifach dasi dich da nie me gse mun.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Edgar_YoureReleased2', 'dl_npc_edgar', 'You''re free to go. I hope I won''t see you here again.', 'Du kannst jetzt gehen. Ich hoffe bloss, dass ich dich hier nie mehr sehen muss.', 'Du chasch ez ga. Ich hoff eifach dasi dich da nie me gse mun.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Edgar_YoureReleased3', 'dl_npc_edgar', 'You can fetch your old belongings from the chest in the barracks.', 'Du kannst deine alten Habseligkeiten aus der Truhe in der Kaserne holen.', 'Du chasch dini alte Sache us de True ide Kaserne hole.');

15 changes: 13 additions & 2 deletions db/insert_scripts/dialogue/insert_text_dl_npc_stephen_utf8.sql
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,16 @@ INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_Urgent', 'dl_npc_stephen', 'Sure it is. But there are other urgent things too. Like what you''ll have to do to get your letter back.', 'Natürlich. Aber es gibt auch andere dringende Sachen. So wie das, was du für mich zu erledigen hast, wenn du deinen Brief wieder willst.', 'Natürlich. Aber es git au anderi dringendi Sache. So we da, wa du für mich erledige muesch, wend din Brief wider wetsch.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_Inina', 'dl_npc_stephen', 'Good for you. But you can''t talk to her either until you''ve taken care of my tiny problem. Then you''ll get your letter back.', 'Schön für dich. Aber du kannst auch nicht mit ihr sprechen bis du eine kleine Sache für mich erledigt hast. Dann wirst du deinen Brief zurück kriegen.', 'Schön für dich. Aber du chasch au nid mit ihre rede bis du e chlini Sach für mich erledigt hesch. Denn bechunsch au din Brief wieder.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_Intimidate', 'dl_npc_stephen', 'Ah, you''re a tough boy aren''t you. But I think I''ll have to keep your letter for a while - until you''ve taken care of some problem of mine...', 'Ah, du bist ein harter Junge, nicht wahr. Aber ich glaube, ich muss deinen Brief noch ein bisschen behalten - bis du eine Sache für mich erledigt hast.', 'Ah, du bisch en herte Siech, he. Aber ich mu din Brief glaub na bitz phalte - bis du so e Sach für mich erledigt hesch...');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Choice_OpenGate', 'dl_npc_stephen', 'Open the damn gate!', 'Öffne die verdammte Tür!', 'Mach du verdammt Türe uf!');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_Sure', 'dl_npc_stephen', 'Sure.', 'Sicher.', 'Sicher.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Choice_TellmeQuest', 'dl_npc_stephen', '(Sigh) Okay, what should I do for you?', '(Seufz) Okay, was soll ich für dich tun?', '(Süüfz) Okay, wa söll ich für dich mache?');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Choice_GotHelmet', 'dl_npc_stephen', 'I got your helmet, now give me that letter back.', 'Ich habe deinen Helm, gib mir jetzt meinen Brief wieder.', 'Ich ha din Helm, gibmer ez min Brief wider.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_HelmetQuest', 'dl_npc_stephen', 'I got a little bit drunk last night and lost my helmet to some shady guys in the tavern. I''m pretty sure that they belong to the dirty thief guild.', 'Ich habe letzte Nacht ein bisschen über den Durst getrunken und meinen Helm an ein paar zwielichtige Gestalten in der Taverne verloren. Ich bin mir ziemlich sicher, dass sie zur dreckigen Diebesgilde gehören.', 'Ich ha letzt Nacht chli zviel trunke und ha min Helm a paar komischi Gstalte ide Taverne verlore. Bimer zimli sicher dass si zude dreckige Diebesgilde ghöred.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_HelmetQuest2', 'dl_npc_stephen', 'I need someone that doesn''t look like he belongs to the order, someone like you, to get my helmet back. If you succeed, I''ll give you your piece of paper back.', 'Ich brauche jemanden der nicht aussieht, als gehöre er zum Orden, jemanden wie dich, der mir meinen Helm wiederbesorgt. Wenn du es schaffst, gebe ich dir dein Stück Papier wieder.', 'Ich bruch öpper wo nid usgseht als würer zum Orde ghöre, öpper we dich, womer min Helm wider holt. Wend das anebringsch, chasch din Papierfötzel wider ha.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_GotHelmet', 'dl_npc_stephen', 'Very good! Give it to me!', 'Sehr gut! Gib ihn mir!', 'Sehr guet! Giben mir!');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Choice_FirstLetter', 'dl_npc_stephen', 'Give me the letter first.', 'Gib mir zuerst den Brief.', 'Gibmer zersch de Brief.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Choice_GiveHelmet', 'dl_npc_stephen', 'Okay, here you go.', 'Okay, da hast du ihn.', 'Okay, da heschen.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_GivesLetter', 'dl_npc_stephen', 'Okay okay, here you go. You can speak with Commander Lloyd. And now give me my helmet!', 'Okay okay, da hast du ihn wieder. Du kannst jetzt von mir aus mit Kommandant Lloyd sprechen. Und jetzt gib mir meinen Helm!', 'Okay okay, da heschen wider. Du chasch ez vo mir us mitem Kommandant Lloyd rede. Und ez gimmer min Helm!');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Choice_NoHelmet', 'dl_npc_stephen', 'You wish.', 'Hättest du wohl gern.', 'Hetsch wohl gern.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_Angry', 'dl_npc_stephen', 'Grr, you little... You''ll pay for this! If Lloyd hears about this...', 'Grr, du kleiner... Dafür wirst du noch bezahlen! Wenn Lloyd davon erfährt...', 'Grr, du chliine... Dafür wirsch na zahle! Wenn de Lloyd devo ghört...');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Choice_CommanderLloyd', 'dl_npc_stephen', 'It''s "Commander" Lloyd.', 'Es heisst "Kommandant" Lloyd.', 'Es heisst "Kommandant" Lloyd.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Choice_DontDrinkMuch', 'dl_npc_stephen', 'Well, it''s your fault if you drink too much.', 'Es ist dein Fehler wenn du zu viel trinkst.', 'Es isch dis Problem wenn du zviel trinksch.');
INSERT INTO text(text_id, text_type, english, german, swiss_german) values ('DL_Stephen_GotoLloyd', 'dl_npc_stephen', 'Perfect. Here is your letter. You can now go and see Commander Lloyd.', 'Perfekt. Hier ist dein Brief. Du kannst jetzt zu Kommandant Lloyd gehen.', 'Perfekt. Da isch din Brief. Du chasch ez zum Kommandant Lloyd.');
2 changes: 1 addition & 1 deletion db/insert_scripts/insert_text_cutscene_utf8.sql
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('Ce
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('Chapter2', 'cutscene','- The City of Gandria -','- Gandria -','- Gandria -');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('Guard:OpenTheGates', 'cutscene','Open the gates!','Öffnet das Tor!','Mached s''Tor uf!');
INSERT INTO text (text_id, text_type, english, german, swiss_german, spanish) values ('Velius:Well', 'cutscene','Well...','...','...','...');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('Velius:SecurityMeasures', 'cutscene','It seems like I''d have to strengthen the security measures.','Es scheint, als müsste ich weitere Sicherheitsvorkehrungen treffen.','Es gseht us, als möst ich na für me Sicherheitsmassnahme sorge.');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('Velius:SecurityMeasures', 'cutscene','It seems like I''ll have to strengthen the security measures.','Es scheint, als müsste ich weitere Sicherheitsvorkehrungen treffen.','Es gseht us, als möst ich na für me Sicherheitsmassnahme sorge.');



Expand Down
1 change: 1 addition & 0 deletions db/insert_scripts/insert_text_location_utf8.sql
Original file line number Diff line number Diff line change
Expand Up @@ -19,3 +19,4 @@ INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('El
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('Gandria','location','Gandria','Gandria','Gandria');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('GandriaPrison','location','Prison of Gandria','Verlies von Gandria','Gfängnis vo Gandria');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('GandriaMines','location','Mines of Gandria','Minen von Gandria','Mine vo Gandria');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('GandriaBarracks','location','Barracks','Kaserne','Kaserne');
1 change: 1 addition & 0 deletions db/insert_scripts/insert_text_npc_utf8.sql
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('np
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('npc_cityguard1','npc','City Guard','Stadtwache','Stadtwach');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('npc_cityguard2','npc','City Guard','Stadtwache','Stadtwach');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('npc_stephen','npc','Stephen','Stephen','Stephen');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('npc_stephen2','npc','Stephen','Stephen','Stephen');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('npc_harek','npc','Harek','Harek','Harek');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('npc_edgar','npc','Overseer Edgar','Aufseher Edgar','Ufseher Edgar');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('npc_ironbell','npc','Ironbell','Ironbell','Ironbell');
Expand Down
5 changes: 4 additions & 1 deletion db/insert_scripts/insert_text_quest_utf8.sql
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,7 @@ INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('ic
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('ice_armor', 'quest_desc','Harek agreed to smith a special armour for me, using the Heart of Khajag. I only need to bring him some iron ore from the mines of Gandria.', 'Harek wird eine spezielle Rüstung aus dem Herz von Khajag für mich schmieden, wenn ich ihm noch etwas Eisenerz aus den Minen von Gandria bringe.','De Harek wird e spezielli Rüstig usem Herz vom Khajag für mich schmide, wenn ich ihm na chli Iseerz us de Mine vo Gandria bring.');

INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('elder_chest','quest','The Tear Stone','Der Tränenstein','De Tränestei');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('elder_chest', 'quest_desc','Vincent gave me the key to the Elder''s treasure chest. I have to get him a blue stone that''s inside and keep the rest. The treasure chest is in a secret room in the Elder''s house. I should make sure that the observer spells won''t catch me.', 'Vincent gab mir den Schlüssel zur Schatztruhe des Dorfältesten. Ich soll ihm einen blauen Stein aus der Kiste holen und den Rest für mich selbst behalten. Die Schatzkiste ist in einem Geheimraum im Haus des Dorfältesten. Ich sollte aufpassen, dass mich die Beobachter-Zauber nicht erwischen.','De Vincent het mer de Schlüssel zude Schatztrue vom Dorfälteste gä. Ich söt ihm en blaue Stei us de Chiste hole und cha de Rest für mich selber phalte. D''Schatzchiste isch imne Gheimruum im Huus vom Älteste. Ich söt ufpasse, dass mich d''Beobachter-Zauber nid verwütsched.');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('elder_chest', 'quest_desc','Vincent gave me the key to the Elder''s treasure chest. I have to get him a blue stone that''s inside and keep the rest. The treasure chest is in a secret room in the Elder''s house. I should make sure that the observer spells won''t catch me.', 'Vincent gab mir den Schlüssel zur Schatztruhe des Dorfältesten. Ich soll ihm einen blauen Stein aus der Kiste holen und den Rest für mich selbst behalten. Die Schatzkiste ist in einem Geheimraum im Haus des Dorfältesten. Ich sollte aufpassen, dass mich die Beobachter-Zauber nicht erwischen.','De Vincent het mer de Schlüssel zude Schatztrue vom Dorfälteste gä. Ich söt ihm en blaue Stei us de Chiste hole und cha de Rest für mich selber phalte. D''Schatzchiste isch imne Gheimruum im Huus vom Älteste. Ich söt ufpasse, dass mich d''Beobachter-Zauber nid verwütsched.');

INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('stephens_helmet','quest','Stephen''s Helmet','Stephen''s Helm','Em Stephen sin Helm');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('stephens_helmet', 'quest_desc','The paladin Stephen wants me to get his helmet back. He lost it to some shady guys in the tavern in Gandria.', 'Der Paladin Stephen will, dass ich ihm seinen Helm zurück bringe. Er hat ihn an ein paar zwielichtige Gestalten in der Taverne verloren.','De Paladin Stephen wett dass ich ihm sin Helm zrugg bring. Er heten a paar komischi Gstalte im Wirtshuus vo Gandria verlore.');
8 changes: 8 additions & 0 deletions db/insert_scripts/item/insert_items_equipment_utf8.sql
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
-- Stephen's Helmet

INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('eq_stephenhelmet', 'item', 'Stephen''s Helmet','Stephen''s Helm','Em Stephen sin Helm');
INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('eq_stephenhelmet', 'item_desc', 'This helmet belongs to the paladin Stephen.','Dieser Helm gehört dem Paladin Stephen.','De Helm ghört em Paladin Stephen.');
INSERT INTO item (item_id, item_type, icon_left, icon_top, gold_value) values ('eq_stephenhelmet', 'eq_head', 200, 550, 50);
INSERT INTO item_attribute (item_id, res_physical, res_fire, dmg_light) values ('eq_stephenhelmet', 8, 2, 3);
INSERT INTO item_equipment (item_id, texture_path, map_texture_path) values ('eq_stephenhelmet', 'res/assets/equipment/head/spritesheet_head_stephenhelmet.png', 'res/assets/equipment/head/spritesheet_map_head_stephenhelmet.png');

-- Ice Hat

INSERT INTO text (text_id, text_type, english, german, swiss_german) values ('eq_icehat', 'item', 'Zeff''s Masterpiece','Zeff''s Meisterwerk','Em Zeff sis Meisterwerk');
Expand Down
1 change: 1 addition & 0 deletions include/FileIO/MapReader.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ class MapReader : public WorldReader {

bool readObjects(tinyxml2::XMLElement* map, MapData& data) const;
bool readNPCs(tinyxml2::XMLElement* objects, MapData& data) const;
bool readChests(tinyxml2::XMLElement* objects, MapData& data) const;
bool readBooks(tinyxml2::XMLElement* objects, MapData& data) const;
bool readDoors(tinyxml2::XMLElement* objects, MapData& data) const;
bool readSigns(tinyxml2::XMLElement* objects, MapData& data) const;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ class LevelMainCharacter;
class InteractComponent;
class LightComponent;

class ChestTile : public LevelDynamicTile {
class ChestLevelTile : public LevelDynamicTile {
public:
ChestTile(LevelScreen* levelScreen) : LevelDynamicTile(levelScreen) {}
ChestLevelTile(LevelScreen* levelScreen) : LevelDynamicTile(levelScreen) {}
void renderAfterForeground(sf::RenderTarget& target) override;
void update(const sf::Time& frameTime) override;
void init() override;
Expand All @@ -26,19 +26,7 @@ class ChestTile : public LevelDynamicTile {

private:
std::string getSpritePath() const override;
// the object id in the dynamic chest tiles object layer.
int m_objectID = -1;
// strength of the chest lock. It ranges from 0 to 5. Levels 1 to 4 need an unlock spell to unlock. Level 5 is key only. Level 0 only a right click :)
int m_strength = 0;
// a permanent chest will stay in an "opened" state after it has been looted. It cannot be looted again though.
bool m_isPermanent = false;
// a chest with a key item id can be opened with the corresponding key.
std::string m_keyItemID;
// lootable items
std::map<std::string, int> m_lootableItems;
// maybe, opening this chest fulfills a condition
std::pair<std::string, std::string> m_conditionProgress;
int m_lootableGold = 0;
ChestTileData m_data;
void setLoot(const std::map<std::string, int>& items, int gold);
void unlock();

Expand Down
2 changes: 1 addition & 1 deletion include/Level/LevelLoader.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#include "Enums/LevelDynamicTileID.h"
#include "Enums/EnemyID.h"

#include "Level/DynamicTiles/ChestTile.h"
#include "Level/DynamicTiles/ChestLevelTile.h"
#include "Level/DynamicTiles/LeverTile.h"
#include "Level/DynamicTiles/SwitchableTile.h"

Expand Down
10 changes: 9 additions & 1 deletion include/Map/DynamicTiles/ChestMapTile.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

#include "global.h"
#include "Map/MapDynamicTile.h"
#include "Structs/ChestTileData.h"

class InteractComponent;

// a chest/chest like object that can be looted on the map, it is currently only used to retrieve stored data.
class ChestMapTile : public MapDynamicTile {
Expand All @@ -13,10 +16,15 @@ class ChestMapTile : public MapDynamicTile {
void onLeftClick() override;
MapDynamicTileID getDynamicTileID() const override { return MapDynamicTileID::Chest; }

void setChestData(const ChestTileData& data);

private:
void loot();
void unlock();

private:
ChestTileData m_data;
InteractComponent* m_interactComponent = nullptr;
std::string getSpritePath() const override;
static const float RANGE;
static const float PICKUP_RANGE;
};
Loading

0 comments on commit a3f758b

Please sign in to comment.