Revision: 7cfb37603d82
Author: Kevin Wells <DarkOp...@gmail.com>
Date: Thu Apr 21 19:48:51 2011
Log: Several bugfixes. Numerous balance changes. Tweaks. Worked on
guideboo...
http://code.google.com/p/escape-from-the-masters-lair/source/detail?r=7cfb37603d82
Revision: f2e4b50b5220
Author: Kevin Wells <DarkOp...@gmail.com>
Date: Thu Apr 21 20:17:18 2011
Log: Made a Windows release.
http://code.google.com/p/escape-from-the-masters-lair/source/detail?r=f2e4b50b5220
==============================================================================
Revision: 7cfb37603d82
Author: Kevin Wells <DarkOp...@gmail.com>
Date: Thu Apr 21 19:48:51 2011
Log: Several bugfixes. Numerous balance changes. Tweaks. Worked on
guidebook.
http://code.google.com/p/escape-from-the-masters-lair/source/detail?r=7cfb37603d82
Modified:
/Escape from the Master's Lair.layout
/Escape from the Master's Lair.layout.save
/creature.cpp
/creature.h
/creature_experience.cpp
/data/templates/races
/docs/guidebook
/material_properties.cpp
/monster.cpp
/monster_ai.cpp
/player.cpp
/player.h
/player_start.cpp
/player_windows.cpp
/random_chance.cpp
/save_load.cpp
/string_input.cpp
/templates.cpp
/version.h
=======================================
--- /Escape from the Master's Lair.layout Thu Apr 21 04:16:01 2011
+++ /Escape from the Master's Lair.layout Thu Apr 21 19:48:51 2011
@@ -20,7 +20,7 @@
<Cursor1 position="132" topLine="0" />
</File>
<File name="combat_all.cpp" open="0" top="0" tabpos="1" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="261" topLine="0" />
+ <Cursor1 position="579" topLine="0" />
</File>
<File name="combat_all.h" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="199" topLine="0" />
@@ -38,10 +38,10 @@
<Cursor1 position="325" topLine="0" />
</File>
<File name="creature.cpp" open="0" top="0" tabpos="4" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="3254" topLine="127" />
+ <Cursor1 position="15124" topLine="435" />
</File>
<File name="creature.h" open="0" top="0" tabpos="4" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="11815" topLine="319" />
+ <Cursor1 position="9015" topLine="247" />
</File>
<File name="creature_alchemy.cpp" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="3400" topLine="48" />
@@ -59,7 +59,7 @@
<Cursor1 position="7224" topLine="178" />
</File>
<File name="creature_experience.cpp" open="0" top="0" tabpos="1"
split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="3715" topLine="83" />
+ <Cursor1 position="10774" topLine="295" />
</File>
<File name="creature_other_stats.cpp" open="0" top="0" tabpos="4"
split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="199" topLine="6" />
@@ -89,7 +89,7 @@
<Cursor1 position="132" topLine="0" />
</File>
<File name="enumerations.h" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="4594" topLine="261" />
+ <Cursor1 position="1713" topLine="95" />
</File>
<File name="font.cpp" open="0" top="0" tabpos="5" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="1745" topLine="48" />
@@ -104,7 +104,7 @@
<Cursor1 position="818" topLine="29" />
</File>
<File name="game.cpp" open="0" top="0" tabpos="3" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="454" topLine="6" />
+ <Cursor1 position="2303" topLine="90" />
</File>
<File name="game.h" open="0" top="0" tabpos="4" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="724" topLine="33" />
@@ -161,7 +161,7 @@
<Cursor1 position="2385" topLine="185" />
</File>
<File name="level.h" open="0" top="0" tabpos="13" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="825" topLine="13" />
+ <Cursor1 position="1144" topLine="13" />
</File>
<File name="level_size.h" open="0" top="0" tabpos="11" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="229" topLine="0" />
@@ -176,7 +176,7 @@
<Cursor1 position="198" topLine="0" />
</File>
<File name="material_properties.cpp" open="0" top="0" tabpos="1"
split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="1551" topLine="12" />
+ <Cursor1 position="933" topLine="6" />
</File>
<File name="material_properties.h" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="476" topLine="3" />
@@ -191,16 +191,16 @@
<Cursor1 position="255" topLine="0" />
</File>
<File name="monster.cpp" open="0" top="0" tabpos="3" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="15331" topLine="422" />
+ <Cursor1 position="6946" topLine="176" />
</File>
<File name="monster.h" open="0" top="0" tabpos="3" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="574" topLine="21" />
</File>
<File name="monster_ai.cpp" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="985" topLine="96" />
+ <Cursor1 position="2420" topLine="60" />
</File>
<File name="monster_ai_states.cpp" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="250" topLine="0" />
+ <Cursor1 position="402" topLine="0" />
</File>
<File name="object.cpp" open="0" top="0" tabpos="0" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="1144" topLine="74" />
@@ -215,19 +215,19 @@
<Cursor1 position="132" topLine="0" />
</File>
<File name="player.cpp" open="1" top="1" tabpos="1" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="10781" topLine="328" />
+ <Cursor1 position="7202" topLine="219" />
</File>
<File name="player.h" open="0" top="0" tabpos="7" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="995" topLine="22" />
+ <Cursor1 position="3347" topLine="106" />
</File>
<File name="player_scores.cpp" open="0" top="0" tabpos="5" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="3783" topLine="12" />
</File>
<File name="player_start.cpp" open="0" top="0" tabpos="1" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="1003" topLine="15" />
+ <Cursor1 position="4445" topLine="194" />
</File>
<File name="player_windows.cpp" open="0" top="0" tabpos="1" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="53722" topLine="1389" />
+ <Cursor1 position="13278" topLine="401" />
</File>
<File name="quit.cpp" open="0" top="0" tabpos="0" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="963" topLine="21" />
@@ -242,7 +242,7 @@
<Cursor1 position="833" topLine="15" />
</File>
<File name="random_chance.cpp" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="220" topLine="0" />
+ <Cursor1 position="2753" topLine="115" />
</File>
<File name="random_chance.h" open="0" top="0" tabpos="3" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="296" topLine="0" />
@@ -260,7 +260,7 @@
<Cursor1 position="454" topLine="16" />
</File>
<File name="save_load.cpp" open="0" top="0" tabpos="9" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="12055" topLine="372" />
+ <Cursor1 position="1176" topLine="35" />
</File>
<File name="save_load.h" open="0" top="0" tabpos="4" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="204" topLine="0" />
@@ -269,13 +269,13 @@
<Cursor1 position="172" topLine="0" />
</File>
<File name="string_input.cpp" open="0" top="0" tabpos="3" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="3072" topLine="78" />
+ <Cursor1 position="5030" topLine="183" />
</File>
<File name="string_input.h" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="242" topLine="0" />
</File>
<File name="templates.cpp" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="497" topLine="6" />
+ <Cursor1 position="373" topLine="0" />
</File>
<File name="templates.h" open="0" top="0" tabpos="1" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="2465" topLine="70" />
=======================================
--- /Escape from the Master's Lair.layout.save Wed Apr 20 23:17:34 2011
+++ /Escape from the Master's Lair.layout.save Thu Apr 21 19:48:51 2011
@@ -14,13 +14,13 @@
<Cursor1 position="573" topLine="3" />
</File>
<File name="collision.cpp" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="142" topLine="0" />
+ <Cursor1 position="156" topLine="0" />
</File>
<File name="collision.h" open="0" top="0" tabpos="0" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="132" topLine="0" />
</File>
<File name="combat_all.cpp" open="0" top="0" tabpos="1" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="261" topLine="0" />
+ <Cursor1 position="579" topLine="0" />
</File>
<File name="combat_all.h" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="199" topLine="0" />
@@ -37,20 +37,20 @@
<File name="covering_conversions.h" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="325" topLine="0" />
</File>
- <File name="creature.cpp" open="0" top="0" tabpos="4" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="14917" topLine="435" />
+ <File name="creature.cpp" open="1" top="0" tabpos="4" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
+ <Cursor1 position="22302" topLine="641" />
</File>
<File name="creature.h" open="0" top="0" tabpos="4" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="11815" topLine="319" />
+ <Cursor1 position="8898" topLine="247" />
</File>
<File name="creature_alchemy.cpp" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="3400" topLine="48" />
</File>
<File name="creature_attributes.cpp" open="0" top="0" tabpos="0"
split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="1460" topLine="36" />
+ <Cursor1 position="215" topLine="26" />
</File>
<File name="creature_combat.cpp" open="0" top="0" tabpos="3" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="15912" topLine="365" />
+ <Cursor1 position="2311" topLine="44" />
</File>
<File name="creature_commands.cpp" open="0" top="0" tabpos="4" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="37944" topLine="1140" />
@@ -58,8 +58,8 @@
<File name="creature_equipment.cpp" open="0" top="0" tabpos="5" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="7224" topLine="178" />
</File>
- <File name="creature_experience.cpp" open="0" top="0" tabpos="1"
split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="3715" topLine="83" />
+ <File name="creature_experience.cpp" open="1" top="0" tabpos="1"
split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
+ <Cursor1 position="7474" topLine="99" />
</File>
<File name="creature_other_stats.cpp" open="0" top="0" tabpos="4"
split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="199" topLine="6" />
@@ -74,7 +74,7 @@
<Cursor1 position="198" topLine="0" />
</File>
<File name="dungeon_generation.cpp" open="0" top="0" tabpos="6" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="32047" topLine="816" />
+ <Cursor1 position="30832" topLine="800" />
</File>
<File name="dungeon_location.cpp" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="185" topLine="0" />
@@ -88,8 +88,8 @@
<File name="effect.h" open="0" top="0" tabpos="0" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="132" topLine="0" />
</File>
- <File name="enumerations.h" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="4594" topLine="261" />
+ <File name="enumerations.h" open="1" top="1" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
+ <Cursor1 position="1778" topLine="101" />
</File>
<File name="font.cpp" open="0" top="0" tabpos="5" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="1745" topLine="48" />
@@ -110,7 +110,7 @@
<Cursor1 position="724" topLine="33" />
</File>
<File name="game_window.cpp" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="3099" topLine="84" />
+ <Cursor1 position="3026" topLine="85" />
</File>
<File name="game_window.h" open="0" top="0" tabpos="3" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="390" topLine="0" />
@@ -170,13 +170,13 @@
<Cursor1 position="132" topLine="0" />
</File>
<File name="main.cpp" open="0" top="0" tabpos="1" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="7046" topLine="161" />
+ <Cursor1 position="6860" topLine="164" />
</File>
<File name="main.h" open="0" top="0" tabpos="0" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="198" topLine="0" />
</File>
<File name="material_properties.cpp" open="0" top="0" tabpos="1"
split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="2245" topLine="54" />
+ <Cursor1 position="933" topLine="6" />
</File>
<File name="material_properties.h" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="476" topLine="3" />
@@ -191,16 +191,16 @@
<Cursor1 position="255" topLine="0" />
</File>
<File name="monster.cpp" open="0" top="0" tabpos="3" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="15331" topLine="422" />
+ <Cursor1 position="6600" topLine="143" />
</File>
<File name="monster.h" open="0" top="0" tabpos="3" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="574" topLine="21" />
</File>
<File name="monster_ai.cpp" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="985" topLine="96" />
+ <Cursor1 position="2420" topLine="60" />
</File>
<File name="monster_ai_states.cpp" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="250" topLine="0" />
+ <Cursor1 position="402" topLine="0" />
</File>
<File name="object.cpp" open="0" top="0" tabpos="0" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="1144" topLine="74" />
@@ -214,20 +214,20 @@
<File name="pixels.h" open="0" top="0" tabpos="0" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="132" topLine="0" />
</File>
- <File name="player.cpp" open="1" top="1" tabpos="6" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="3233" topLine="114" />
+ <File name="player.cpp" open="1" top="0" tabpos="1" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
+ <Cursor1 position="6252" topLine="200" />
</File>
<File name="player.h" open="0" top="0" tabpos="7" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="995" topLine="22" />
+ <Cursor1 position="3347" topLine="106" />
</File>
<File name="player_scores.cpp" open="0" top="0" tabpos="5" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="5958" topLine="118" />
+ <Cursor1 position="3783" topLine="12" />
</File>
<File name="player_start.cpp" open="0" top="0" tabpos="1" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="1003" topLine="15" />
+ <Cursor1 position="4176" topLine="128" />
</File>
<File name="player_windows.cpp" open="0" top="0" tabpos="1" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="54114" topLine="1401" />
+ <Cursor1 position="53722" topLine="1389" />
</File>
<File name="quit.cpp" open="0" top="0" tabpos="0" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="963" topLine="21" />
@@ -242,7 +242,7 @@
<Cursor1 position="833" topLine="15" />
</File>
<File name="random_chance.cpp" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="220" topLine="0" />
+ <Cursor1 position="2753" topLine="115" />
</File>
<File name="random_chance.h" open="0" top="0" tabpos="3" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="296" topLine="0" />
@@ -260,7 +260,7 @@
<Cursor1 position="454" topLine="16" />
</File>
<File name="save_load.cpp" open="0" top="0" tabpos="9" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="12055" topLine="372" />
+ <Cursor1 position="1176" topLine="35" />
</File>
<File name="save_load.h" open="0" top="0" tabpos="4" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="204" topLine="0" />
@@ -269,13 +269,13 @@
<Cursor1 position="172" topLine="0" />
</File>
<File name="string_input.cpp" open="0" top="0" tabpos="3" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="3072" topLine="78" />
+ <Cursor1 position="11847" topLine="273" />
</File>
<File name="string_input.h" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="242" topLine="0" />
</File>
- <File name="templates.cpp" open="0" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="19513" topLine="549" />
+ <File name="templates.cpp" open="1" top="0" tabpos="2" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
+ <Cursor1 position="497" topLine="6" />
</File>
<File name="templates.h" open="0" top="0" tabpos="1" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="2465" topLine="70" />
=======================================
--- /creature.cpp Thu Apr 21 04:05:54 2011
+++ /creature.cpp Thu Apr 21 19:48:51 2011
@@ -665,7 +665,7 @@
points_gained=0;
inventory_weight=return_inventory_weight(ITEM_ARMOR);
//Apply the encumbrance bonus to the armor skill increase.
- points_gained+=inventory_weight/75.0;
+ points_gained+=(int)inventory_weight/50.0;
gain_skill_experience(SKILL_ARMOR,points_gained);
}
=======================================
--- /creature.h Wed Apr 20 10:59:15 2011
+++ /creature.h Thu Apr 21 19:48:51 2011
@@ -262,7 +262,7 @@
void level_up_skill(short skill,int experience_gained);
//Gain skill experience points.
- void gain_skill_experience(short skill,int points_gained,int
experience_gained=1,bool allow_focused_bonus=true);
+ void gain_skill_experience(short skill,int points_gained,int
experience_gained=1,bool allow_focused_bonus=true,bool enable_pacing=true);
//Evaluate the tile the creature is trying to move to.
//Returns true if the creature can move, false if the creature can not
move.
=======================================
--- /creature_experience.cpp Wed Apr 20 12:02:54 2011
+++ /creature_experience.cpp Thu Apr 21 19:48:51 2011
@@ -218,12 +218,10 @@
else{
//Select the monster's attributes to improve and improve them.
- ///Right now this is random, but the monster should be somewhat
intelligent about this.
+ ///Right now this just prioritizes attributes based on their
order, but the monster should be somewhat intelligent about this.
//Determine the attributes to improve.
for(int i=0;i<levelup_attributes.size();i++){
- ///Disable some attributes.
-
levelup_attributes[i]=random_range(ATTRIBUTE_STRENGTH,ATTRIBUTE_HARDINESS);
- ///
+ levelup_attributes[i]=i;
}
//Apply the selected attribute bonuses.
@@ -296,10 +294,6 @@
else if(skill==SKILL_MAGIC_EARTH || skill==SKILL_MAGIC_CONJURATION ||
skill==SKILL_MAGIC_ENCHANTMENT || skill==SKILL_MAGIC_SUMMONING){
attribute_level_bonuses[ATTRIBUTE_ACUMEN]++;
}
-
- ///ss.clear();ss.str("");ss<<"You have gained a skill
level!";msg=ss.str();
-
- ///update_text_log(msg.c_str(),is_player);
//If the skill's experience reaches its current maximum experience.
if(skills[skill][SKILL_EXPERIENCE]>=skills[skill][SKILL_EXPERIENCE_MAX]){
@@ -308,7 +302,12 @@
}
}
-void Creature::gain_skill_experience(short skill,int points_gained,int
experience_gained,bool allow_focused_bonus){
+void Creature::gain_skill_experience(short skill,int points_gained,int
experience_gained,bool allow_focused_bonus,bool enable_pacing){
+ if(enable_pacing){
+ //Set the pace of skill leveling.
+ points_gained*=3.0;
+ }
+
//As long as at least one point is being gained.
if(points_gained>0){
//If this skill is a focused skill.
=======================================
--- /data/templates/races Wed Apr 20 05:54:06 2011
+++ /data/templates/races Thu Apr 21 19:48:51 2011
@@ -616,7 +616,7 @@
damage ranged:-1,-4
damage thrown:-1,-3
speed:-150
- movement speed:-3
+ movement speed:-5
<ai traits>
flees:1
uses items:1
=======================================
--- /docs/guidebook Thu Apr 21 04:16:01 2011
+++ /docs/guidebook Thu Apr 21 19:48:51 2011
@@ -55,9 +55,30 @@
== Movement ==
You can move in 8 different directions.
- You have a few options for moving.
- You can use the arrow keys, but with those, you can only move
orthogonally.
-
+ You have a few options for going about this:
+
+ * You can use the arrow keys to move orthogonally.
+
+ * You can move in all 8 directions using the numpad.
+ 7(up left) 8(up) 9(up right)
+ \ | /
+ 4(left) - 5 - 6(right)
+ / | \
+ 1(down left) 2(down) 3(down right)
+
+ * You can also use the hjklyubn keys to move in all 8 directions.
+ y(up left) k(up) u(up right)
+ \ | /
+ h(left) - - l(right)
+ / | \
+ b(down left) j(down) n(down right)
+
+ == Combat ==
+
+ To attack a monster with melee, simply "walk" into them.
+
+ To throw an item, press 't' and then the letter that represents the item
you wish to throw.
+
== Extended Commands ==
=======================================
--- /material_properties.cpp Sun Apr 17 01:59:21 2011
+++ /material_properties.cpp Thu Apr 21 19:48:51 2011
@@ -14,67 +14,67 @@
void prepare_specific_gravities(){
specific_gravities[MATERIAL_WOOD]=0.7;
specific_gravities[MATERIAL_PAPER]=0.9;
- specific_gravities[MATERIAL_DIRT]=1.4;
specific_gravities[MATERIAL_LEATHER]=0.95;
+ specific_gravities[MATERIAL_WATER]=1.0;
specific_gravities[MATERIAL_CLOTH]=1.32;
+ specific_gravities[MATERIAL_DIRT]=1.4;
specific_gravities[MATERIAL_BONE]=1.92;
+ specific_gravities[MATERIAL_LAVA]=2.0;
specific_gravities[MATERIAL_FOOD]=2.0;
specific_gravities[MATERIAL_GLASS]=2.4;
specific_gravities[MATERIAL_STONE]=2.8;
specific_gravities[MATERIAL_CORPSE]=3.84;
+ specific_gravities[MATERIAL_IRON]=7.03;
specific_gravities[MATERIAL_BRONZE]=7.4;
specific_gravities[MATERIAL_STEEL]=7.7;
- specific_gravities[MATERIAL_IRON]=7.03;
specific_gravities[MATERIAL_BRASS]=8.4;
specific_gravities[MATERIAL_COPPER]=8.89;
specific_gravities[MATERIAL_SILVER]=10.5;
specific_gravities[MATERIAL_GOLD]=19.32;
- specific_gravities[MATERIAL_WATER]=1.0;
- specific_gravities[MATERIAL_LAVA]=2.0;
}
void prepare_toughness(){
- toughness[MATERIAL_WOOD]=2;
- toughness[MATERIAL_PAPER]=0.1;
- toughness[MATERIAL_DIRT]=0.1;
- toughness[MATERIAL_LEATHER]=5;
- toughness[MATERIAL_CLOTH]=4;
- toughness[MATERIAL_BONE]=3;
- toughness[MATERIAL_FOOD]=0.1;
- toughness[MATERIAL_GLASS]=1;
- toughness[MATERIAL_STONE]=6;
- toughness[MATERIAL_CORPSE]=0.1;
- toughness[MATERIAL_BRONZE]=8;
- toughness[MATERIAL_STEEL]=10;
- toughness[MATERIAL_IRON]=9;
- toughness[MATERIAL_BRASS]=7.5;
- toughness[MATERIAL_COPPER]=7;
- toughness[MATERIAL_SILVER]=6.8;
- toughness[MATERIAL_GOLD]=6.5;
- toughness[MATERIAL_WATER]=0.1;
- toughness[MATERIAL_LAVA]=0.1;
+ toughness[MATERIAL_WATER]=0.05;
+ toughness[MATERIAL_LAVA]=0.05;
+ toughness[MATERIAL_PAPER]=0.05;
+ toughness[MATERIAL_DIRT]=0.05;
+ toughness[MATERIAL_FOOD]=0.05;
+ toughness[MATERIAL_CORPSE]=0.05;
+ toughness[MATERIAL_GLASS]=0.25;
+ toughness[MATERIAL_WOOD]=0.5;
+ toughness[MATERIAL_BONE]=0.75;
+ toughness[MATERIAL_CLOTH]=1.0;
+ toughness[MATERIAL_LEATHER]=1.25;
+ toughness[MATERIAL_STONE]=1.5;
+ toughness[MATERIAL_GOLD]=2.0;
+ toughness[MATERIAL_SILVER]=2.5;
+ toughness[MATERIAL_COPPER]=3.0;
+ toughness[MATERIAL_BRASS]=3.5;
+ toughness[MATERIAL_BRONZE]=4.0;
+ toughness[MATERIAL_IRON]=4.5;
+ toughness[MATERIAL_STEEL]=5.0;
}
void prepare_values(){
- values[MATERIAL_WOOD]=5;
- values[MATERIAL_PAPER]=4;
+ values[MATERIAL_WATER]=1;
+ values[MATERIAL_LAVA]=2;
values[MATERIAL_DIRT]=3;
- values[MATERIAL_LEATHER]=12;
- values[MATERIAL_CLOTH]=9;
+ values[MATERIAL_PAPER]=4;
+ values[MATERIAL_WOOD]=5;
+ values[MATERIAL_STONE]=5;
values[MATERIAL_BONE]=6;
+ values[MATERIAL_CORPSE]=7;
values[MATERIAL_FOOD]=8;
+ values[MATERIAL_CLOTH]=9;
values[MATERIAL_GLASS]=11;
- values[MATERIAL_STONE]=5;
- values[MATERIAL_CORPSE]=7;
+ values[MATERIAL_LEATHER]=12;
+ values[MATERIAL_COPPER]=13;
values[MATERIAL_BRONZE]=14;
- values[MATERIAL_STEEL]=17;
- values[MATERIAL_IRON]=16;
values[MATERIAL_BRASS]=15;
- values[MATERIAL_COPPER]=13;
+ values[MATERIAL_IRON]=16;
+ values[MATERIAL_STEEL]=17;
values[MATERIAL_SILVER]=18;
values[MATERIAL_GOLD]=19;
- values[MATERIAL_WATER]=1;
- values[MATERIAL_LAVA]=2;
}
string material_to_string(short material){
=======================================
--- /monster.cpp Wed Apr 20 22:50:31 2011
+++ /monster.cpp Thu Apr 21 19:48:51 2011
@@ -101,10 +101,11 @@
//Set the monster's focused skills.
- //If the monster has an affiinity for one or more skills, choose those
first.
+ //If the player has an affiinity for one or more skills, choose those
first.
+
for(int i=SKILL_BLADED_WEAPONS;i<SKILL_MAGIC_SUMMONING+1;i++){
//If the player has less than the standard max experience for this
skill, he has a natural affinity for it.
- if(skills[i][SKILL_EXPERIENCE_MAX]<STARTING_SKILL_EXPERIENCE_MAX){
+
if(skills[i][SKILL_EXPERIENCE_MAX]+templates.template_races[race].skills[i][SKILL_EXPERIENCE_MAX]<STARTING_SKILL_EXPERIENCE_MAX){
for(int n=0;n<3;n++){
if(focused_skills[n]==-1){
focused_skills[n]=i;
@@ -114,28 +115,83 @@
}
}
+ //Then, choose 3 decent skills if they are not already chosen.
+
+ bool armor_chosen=false;
for(int n=0;n<3;n++){
- if(focused_skills[n]==-1){
- focused_skills[n]=SKILL_ARMOR;
+ if(focused_skills[n]==SKILL_ARMOR){
+ armor_chosen=true;
break;
}
}
+ if(!armor_chosen){
+ for(int n=0;n<3;n++){
+ if(focused_skills[n]==-1){
+ focused_skills[n]=SKILL_ARMOR;
+ break;
+ }
+ }
+ }
+
+ bool speed_chosen=false;
for(int n=0;n<3;n++){
- if(focused_skills[n]==-1){
- focused_skills[n]=SKILL_SPEED;
+ if(focused_skills[n]==SKILL_SPEED){
+ speed_chosen=true;
break;
}
}
+ if(!speed_chosen){
+ for(int n=0;n<3;n++){
+ if(focused_skills[n]==-1){
+ focused_skills[n]=SKILL_SPEED;
+ break;
+ }
+ }
+ }
+
+ bool bladed_weapons_chosen=false;
for(int n=0;n<3;n++){
- if(focused_skills[n]==-1){
- focused_skills[n]=SKILL_BLADED_WEAPONS;
+ if(focused_skills[n]==SKILL_BLADED_WEAPONS){
+ bladed_weapons_chosen=true;
break;
}
}
+ if(!bladed_weapons_chosen){
+ for(int n=0;n<3;n++){
+ if(focused_skills[n]==-1){
+ focused_skills[n]=SKILL_BLADED_WEAPONS;
+ break;
+ }
+ }
+ }
+
+ //Finally, fill out our skills with random ones, if necessary.
+
+ for(int i=0;i<3;){
+ if(focused_skills[i]==-1){
+ //Choose a random skill.
+ ///short
random_skill=random_range(SKILL_BLADED_WEAPONS,SKILL_MAGIC_SUMMONING);
+ ///Disable some skills.
+ short
random_skill=random_range(SKILL_BLADED_WEAPONS,SKILL_ARMOR);
+ while(random_skill==SKILL_SECURITY ||
random_skill==SKILL_STEALTH){
+
random_skill=random_range(SKILL_BLADED_WEAPONS,SKILL_ARMOR);
+ }
+ ///
+
+ //If the random skill is different from all of the focused
skills.
+ if(random_skill!=focused_skills[0] &&
random_skill!=focused_skills[1] && random_skill!=focused_skills[2]){
+ focused_skills[i]=random_skill;
+ i++;
+ }
+ }
+ else{
+ i++;
+ }
+ }
//Once the focused skills are set, apply their initial bonuses to
their corresponding skills.
for(int i=0;i<3;i++){
-
gain_skill_experience(focused_skills[i],skills[focused_skills[i]][SKILL_EXPERIENCE_MAX]-skills[focused_skills[i]][SKILL_EXPERIENCE],0,false);
+
gain_skill_experience(focused_skills[i],skills[focused_skills[i]][SKILL_EXPERIENCE_MAX]-skills[focused_skills[i]][SKILL_EXPERIENCE],0,false,false);
}
//Level the monster up an appropriate number of times.
@@ -441,8 +497,8 @@
else{
health_bar_color=COLOR_RED;
}
- double
health_bar_width=((double)((double)health/(double)health_max)*100)/6.25;
-
render_rectangle((int)(return_absolute_x()-player.camera_x),(int)(return_absolute_y()+TILE_SIZE_Y-3-player.camera_y),health_bar_width,3,0.75,health_bar_color);
+ double
health_bar_width=((double)((double)return_health()/(double)return_health_max())*100.0)/6.25;
+
render_rectangle((int)(return_absolute_x()-player.camera_x),(int)(return_absolute_y()+TILE_SIZE_Y-3-player.camera_y),health_bar_width,3,1.0,health_bar_color);
}
if(player.option_dev){
=======================================
--- /monster_ai.cpp Mon Apr 18 18:50:18 2011
+++ /monster_ai.cpp Thu Apr 21 19:48:51 2011
@@ -76,11 +76,15 @@
///Set action coords to nearest fountain.
}
}
- else
if(ai_state_hostile_nearby(hostile_creature.x,hostile_creature.y)){
+
+ //-Combat-//
+
+ else if(return_health()>=return_health_max()*0.5 &&
ai_state_hostile_nearby(hostile_creature.x,hostile_creature.y)){
action.action=AI_ACTION_MOVE;
action.coords.x=hostile_creature.x;
action.coords.y=hostile_creature.y;
}
+
else if(mr->ai_trait_wanders){
action.action=AI_ACTION_MOVE;
action.coords.x=random_range(0,vector_levels[current_level].level_x-1);
=======================================
--- /player.cpp Thu Apr 21 04:05:54 2011
+++ /player.cpp Thu Apr 21 19:48:51 2011
@@ -138,6 +138,7 @@
option_dev=false;
option_fps=true;
option_healthbars=true;
+ option_highlight_self=true;
flag_cheater=false;
@@ -217,7 +218,7 @@
void Player::set_base_stats(){
// From creature: //
- health_max=templates.base_stats.health_max*1.5;
+ health_max=templates.base_stats.health_max*2.0;
health=health_max;
mana_max=templates.base_stats.mana_max;
@@ -240,6 +241,11 @@
for(int i=SKILL_BLADED_WEAPONS;i<SKILL_MAGIC_SUMMONING+1;i++){
skills[i][SKILL_EXPERIENCE_MAX]+=templates.template_races[race].skills[i][SKILL_EXPERIENCE_MAX];
}
+
+ //Apply the focused skills' initial bonuses to their corresponding
skills.
+ for(int i=0;i<3;i++){
+
gain_skill_experience(focused_skills[i],skills[focused_skills[i]][SKILL_EXPERIENCE_MAX]-skills[focused_skills[i]][SKILL_EXPERIENCE],0,false,false);
+ }
}
void Player::handle_input(){
@@ -691,55 +697,56 @@
// Camera controls: //
//******************//
- //If numpad 0 is pressed, toggle the camera's stickiness and play
the appropriate sound.
- ///This is commented out for the release version.
- /**if(keystates[SDLK_KP0]){
- if(cam_state==CAM_STICKY){
- cam_state=0;
- }
- else{
- cam_state=CAM_STICKY;
+ if(option_dev){
+ //If numpad 0 is pressed, toggle the camera's stickiness and
play the appropriate sound.
+ if(keystates[SDLK_KP0]){
+ if(cam_state==CAM_STICKY){
+ cam_state=0;
+ }
+ else{
+ cam_state=CAM_STICKY;
+ }
+
+ //Once the toggle camera stickiness key has been hit, the
player must release it for it to function again.
+ keystates[SDLK_KP0]=NULL;
}
- //Once the toggle camera stickiness key has been hit, the
player must release it for it to function again.
- keystates[SDLK_KP0]=NULL;
- }
-
- //If the camera is unsticky, check for camera inputs.
- if(cam_state!=CAM_STICKY){
- //Handle camera directional keys being pressed.
- if(keystates[SDLK_DELETE]){
- cam_state=LEFT;
- }
- if(keystates[SDLK_HOME]){
- cam_state=UP;
- }
- if(keystates[SDLK_PAGEDOWN]){
- cam_state=RIGHT;
- }
- if(keystates[SDLK_END]){
- cam_state=DOWN;
- }
-
- //Handle multiple camera directional keys being pressed at
once.
- if(keystates[SDLK_DELETE] && keystates[SDLK_HOME]){
- cam_state=LEFT_UP;
- }
- if(keystates[SDLK_PAGEDOWN] && keystates[SDLK_HOME]){
- cam_state=RIGHT_UP;
- }
- if(keystates[SDLK_PAGEDOWN] && keystates[SDLK_END]){
- cam_state=RIGHT_DOWN;
- }
- if(keystates[SDLK_DELETE] && keystates[SDLK_END]){
- cam_state=LEFT_DOWN;
- }
-
- //If no camera directional keys are pressed, stop the camera.
- if(!keystates[SDLK_DELETE] && !keystates[SDLK_HOME]
&& !keystates[SDLK_PAGEDOWN] && !keystates[SDLK_END]){
- cam_state=0;
- }
- }*/
+ //If the camera is unsticky, check for camera inputs.
+ if(cam_state!=CAM_STICKY){
+ //Handle camera directional keys being pressed.
+ if(keystates[SDLK_DELETE]){
+ cam_state=LEFT;
+ }
+ if(keystates[SDLK_HOME]){
+ cam_state=UP;
+ }
+ if(keystates[SDLK_PAGEDOWN]){
+ cam_state=RIGHT;
+ }
+ if(keystates[SDLK_END]){
+ cam_state=DOWN;
+ }
+
+ //Handle multiple camera directional keys being pressed at
once.
+ if(keystates[SDLK_DELETE] && keystates[SDLK_HOME]){
+ cam_state=LEFT_UP;
+ }
+ if(keystates[SDLK_PAGEDOWN] && keystates[SDLK_HOME]){
+ cam_state=RIGHT_UP;
+ }
+ if(keystates[SDLK_PAGEDOWN] && keystates[SDLK_END]){
+ cam_state=RIGHT_DOWN;
+ }
+ if(keystates[SDLK_DELETE] && keystates[SDLK_END]){
+ cam_state=LEFT_DOWN;
+ }
+
+ //If no camera directional keys are pressed, stop the
camera.
+ if(!keystates[SDLK_DELETE] && !keystates[SDLK_HOME]
&& !keystates[SDLK_PAGEDOWN] && !keystates[SDLK_END]){
+ cam_state=0;
+ }
+ }
+ }
//If the player hits the command key.
if(keystates[SDLK_RETURN] || keystates[SDLK_KP_ENTER]){
@@ -883,9 +890,9 @@
//Process the player's light(s).
//Give off the "no lights" light.
-
fov_circle(&fov_settings,&vector_levels[current_level],&(light_data)LIGHT_SOURCE_OFF_DATA,player.x,player.y,LIGHT_SOURCE_OFF_RADIUS);
+
///fov_circle(&fov_settings,&vector_levels[current_level],&(light_data)LIGHT_SOURCE_OFF_DATA,player.x,player.y,LIGHT_SOURCE_OFF_RADIUS);
//Light the player's own space.
-
fov_circle(&fov_settings,&vector_levels[current_level],&(light_data)LIGHT_SOURCE_OFF_DATA,player.x,player.y,0);
+
///fov_circle(&fov_settings,&vector_levels[current_level],&(light_data)LIGHT_SOURCE_OFF_DATA,player.x,player.y,0);
bool any_lights=false;
@@ -1018,6 +1025,11 @@
if(!tile_rendered->at(x)[y]){
//Render the player if the player is in the camera bounds:
if(return_absolute_x()>=camera_x-TILE_SIZE_X &&
return_absolute_x()<=camera_x+camera_w &&
return_absolute_y()>=camera_y-TILE_SIZE_Y &&
return_absolute_y()<=camera_y+camera_h){
+ if(option_highlight_self){
+
render_rectangle((int)(return_absolute_x()-camera_x),(int)(return_absolute_y()-camera_y),TILE_SIZE_X,TILE_SIZE_Y,1.0,COLOR_WHITE);
+
render_rectangle((int)(return_absolute_x()+1-camera_x),(int)(return_absolute_y()+1-camera_y),TILE_SIZE_X-2,TILE_SIZE_Y-2,1.0,COLOR_BLACK);
+ }
+
short render_color=color;
short temp_color=coverings_to_color(this);
@@ -1041,8 +1053,8 @@
else{
health_bar_color=COLOR_RED;
}
- double
health_bar_width=((double)((double)health/(double)health_max)*100)/6.25;
-
render_rectangle((int)(return_absolute_x()-camera_x),(int)(return_absolute_y()+TILE_SIZE_Y-3-camera_y),health_bar_width,3,0.75,health_bar_color);
+ double
health_bar_width=((double)((double)return_health()/(double)return_health_max())*100.0)/6.25;
+
render_rectangle((int)(return_absolute_x()-camera_x),(int)(return_absolute_y()+TILE_SIZE_Y-3-camera_y),health_bar_width,3,1.0,health_bar_color);
}
tile_rendered->at(x)[y]=true;
=======================================
--- /player.h Wed Apr 20 22:50:31 2011
+++ /player.h Thu Apr 21 19:48:51 2011
@@ -114,6 +114,7 @@
bool option_dev;
bool option_fps;
bool option_healthbars;
+ bool option_highlight_self;
//The coordinates and dimensions of the camera.
double camera_x,camera_y;
=======================================
--- /player_start.cpp Wed Apr 20 10:59:15 2011
+++ /player_start.cpp Thu Apr 21 19:48:51 2011
@@ -150,24 +150,79 @@
}
}
+ //Then, choose 3 decent skills if they are not already chosen.
+
+ bool armor_chosen=false;
for(int n=0;n<3;n++){
- if(focused_skills[n]==-1){
- focused_skills[n]=SKILL_ARMOR;
+ if(focused_skills[n]==SKILL_ARMOR){
+ armor_chosen=true;
break;
}
}
+ if(!armor_chosen){
+ for(int n=0;n<3;n++){
+ if(focused_skills[n]==-1){
+ focused_skills[n]=SKILL_ARMOR;
+ break;
+ }
+ }
+ }
+
+ bool speed_chosen=false;
for(int n=0;n<3;n++){
- if(focused_skills[n]==-1){
- focused_skills[n]=SKILL_SPEED;
+ if(focused_skills[n]==SKILL_SPEED){
+ speed_chosen=true;
break;
}
}
+ if(!speed_chosen){
+ for(int n=0;n<3;n++){
+ if(focused_skills[n]==-1){
+ focused_skills[n]=SKILL_SPEED;
+ break;
+ }
+ }
+ }
+
+ bool bladed_weapons_chosen=false;
for(int n=0;n<3;n++){
- if(focused_skills[n]==-1){
- focused_skills[n]=SKILL_BLADED_WEAPONS;
+ if(focused_skills[n]==SKILL_BLADED_WEAPONS){
+ bladed_weapons_chosen=true;
break;
}
}
+ if(!bladed_weapons_chosen){
+ for(int n=0;n<3;n++){
+ if(focused_skills[n]==-1){
+ focused_skills[n]=SKILL_BLADED_WEAPONS;
+ break;
+ }
+ }
+ }
+
+ //Finally, fill out our skills with random ones, if necessary.
+
+ for(int i=0;i<3;){
+ if(focused_skills[i]==-1){
+ //Choose a random skill.
+ ///short
random_skill=random_range(SKILL_BLADED_WEAPONS,SKILL_MAGIC_SUMMONING);
+ ///Disable some skills.
+ short
random_skill=random_range(SKILL_BLADED_WEAPONS,SKILL_ARMOR);
+ while(random_skill==SKILL_SECURITY ||
random_skill==SKILL_STEALTH){
+
random_skill=random_range(SKILL_BLADED_WEAPONS,SKILL_ARMOR);
+ }
+ ///
+
+ //If the random skill is different from all of the focused
skills.
+ if(random_skill!=focused_skills[0] &&
random_skill!=focused_skills[1] && random_skill!=focused_skills[2]){
+ focused_skills[i]=random_skill;
+ i++;
+ }
+ }
+ else{
+ i++;
+ }
+ }
done_focusing_skills=true;
}
=======================================
--- /player_windows.cpp Thu Apr 21 04:05:54 2011
+++ /player_windows.cpp Thu Apr 21 19:48:51 2011
@@ -414,11 +414,6 @@
void Player::handle_input_start_message(){
if(event.key.keysym.sym==SDLK_RETURN ||
event.key.keysym.sym==SDLK_KP_ENTER || event.key.keysym.sym==SDLK_SPACE){
- //Apply the focused skills' initial bonuses to their corresponding
skills.
- for(int i=0;i<3;i++){
-
gain_skill_experience(focused_skills[i],skills[focused_skills[i]][SKILL_EXPERIENCE_MAX]-skills[focused_skills[i]][SKILL_EXPERIENCE],0,false);
- }
-
game.new_game();
}
}
=======================================
--- /random_chance.cpp Wed Apr 20 10:59:15 2011
+++ /random_chance.cpp Thu Apr 21 19:48:51 2011
@@ -125,7 +125,7 @@
bool rc_exercise_skill_armor(){
int random_attempt=random_range(0,99);
- if(random_attempt>=0 && random_attempt<25){
+ if(random_attempt>=0 && random_attempt<15){
return true;
}
else{
@@ -136,7 +136,7 @@
bool rc_exercise_skill_speed(){
int random_attempt=random_range(0,99);
- if(random_attempt>=0 && random_attempt<25){
+ if(random_attempt>=0 && random_attempt<15){
return true;
}
else{
=======================================
--- /save_load.cpp Wed Apr 20 22:50:31 2011
+++ /save_load.cpp Thu Apr 21 19:48:51 2011
@@ -402,6 +402,7 @@
load>>player.option_dev;
load>>player.option_fps;
load>>player.option_healthbars;
+ load>>player.option_highlight_self;
load.close();
load.clear();
@@ -428,6 +429,7 @@
save<<player.option_dev<<"\n";
save<<player.option_fps<<"\n";
save<<player.option_healthbars<<"\n";
+ save<<player.option_highlight_self<<"\n";
save.close();
save.clear();
=======================================
--- /string_input.cpp Wed Apr 20 22:50:31 2011
+++ /string_input.cpp Thu Apr 21 19:48:51 2011
@@ -23,14 +23,17 @@
void string_input::handle_events(){
if(event.type==SDL_KEYDOWN){
- if(str1.length()<110){/**If the string is less than the maximum
size.*/
+ //If the string is less than the maximum size.
+ if(str1.length()<110){
if(event.key.keysym.unicode>=(Uint16)' ' &&
event.key.keysym.unicode<=(Uint16)'~'){
str1+=(char)event.key.keysym.unicode;
}
}
- if(event.key.keysym.sym==SDLK_BACKSPACE && str1.length()>0){/**If
the backspace key is pressed and the string is not empty.*/
- str1.erase(str1.length()-1);/**Remove one character from the
end of the string.*/
+ //If the backspace key is pressed and the string is not empty.
+ if(event.key.keysym.sym==SDLK_BACKSPACE && str1.length()>0){
+ //Remove one character from the end of the string.
+ str1.erase(str1.length()-1);
}
else if(event.key.keysym.sym==SDLK_UP){
@@ -53,7 +56,8 @@
}
}
- else if((event.key.keysym.sym==SDLK_RETURN ||
event.key.keysym.sym==SDLK_KP_ENTER) && str1.length()>0){/**If the player
hits enter.*/
+ //If the player hits enter.
+ else if((event.key.keysym.sym==SDLK_RETURN ||
event.key.keysym.sym==SDLK_KP_ENTER) && str1.length()>0){
string str_command=str1;
//Forget the oldest command string.
@@ -64,26 +68,7 @@
trim(str_command);
- if(istarts_with(str_command,"info")){
- //Determine the date and time.
- time_t now;
- struct tm *tm_now;
- char buff[BUFSIZ];
- now=time(NULL);
- tm_now=localtime(&now);
- strftime(buff,sizeof buff,"%A, %B %d, %Y
- %H:%M:%S",tm_now);
-
-
update_text_log("------------------------------------Info---------------------------------------",true,MESSAGE_SYSTEM);
-
- msg="Name: ";
- msg+=player.name;
- update_text_log(msg.c_str(),true,MESSAGE_SYSTEM);
-
- msg=buff;
- update_text_log(msg.c_str(),true,MESSAGE_SYSTEM);
- }
-
- else if(istarts_with(str_command,"dev")){
+ if(istarts_with(str_command,"dev")){
player.option_dev=!player.option_dev;
options_save();
@@ -94,17 +79,6 @@
update_text_log("Dev mode off.",true,MESSAGE_SYSTEM);
}
}
-
- else if(istarts_with(str_command,"health bars")){
- player.option_healthbars=!player.option_healthbars;
- options_save();
- if(player.option_healthbars){
- update_text_log("Health bar display
on.",true,MESSAGE_SYSTEM);
- }
- else{
- update_text_log("Health bar display
off.",true,MESSAGE_SYSTEM);
- }
- }
else if(player.option_dev && istarts_with(str_command,"add")){
ierase_first(str_command,"add");
@@ -237,12 +211,26 @@
}
}
- else if(istarts_with(str_command,"save")){
- save_game();
+ else if(istarts_with(str_command,"hb")){
+ player.option_healthbars=!player.option_healthbars;
+ options_save();
+ if(player.option_healthbars){
+ update_text_log("Health bar display
on.",true,MESSAGE_SYSTEM);
+ }
+ else{
+ update_text_log("Health bar display
off.",true,MESSAGE_SYSTEM);
+ }
}
- else if(istarts_with(str_command,"4 8 15 16 23 42")){
- ///
+ else if(istarts_with(str_command,"hl")){
+ player.option_highlight_self=!player.option_highlight_self;
+ options_save();
+ if(player.option_highlight_self){
+ update_text_log("Highlight self
on.",true,MESSAGE_SYSTEM);
+ }
+ else{
+ update_text_log("Highlight self
off.",true,MESSAGE_SYSTEM);
+ }
}
else if(istarts_with(str_command,"fps")){
@@ -256,20 +244,28 @@
}
}
- else if(istarts_with(str_command,"help")){
-
update_text_log("-------------------------------------Help---------------------------------------",true,MESSAGE_SYSTEM);
- update_text_log("For a full list of commands,
type '/commands'.",true,MESSAGE_SYSTEM);
+ else if(istarts_with(str_command,"fs")){
+ main_window.toggle_fullscreen();
+ if(player.option_fullscreen){
+ update_text_log("Switched to fullscreen
mode.",true,MESSAGE_SYSTEM);
+ }
+ else{
+ update_text_log("Switched to windowed
mode.",true,MESSAGE_SYSTEM);
+ }
}
- else if(istarts_with(str_command,"commands")){
-
update_text_log("-----------------------------------Commands-------------------------------------",true,MESSAGE_SYSTEM);
- update_text_log("/info",true,MESSAGE_SYSTEM);
- update_text_log("/help",true,MESSAGE_SYSTEM);
- update_text_log("/about",true,MESSAGE_SYSTEM);
- update_text_log("/exit",true,MESSAGE_SYSTEM);
- update_text_log("/fullscreen",true,MESSAGE_SYSTEM);
+ else if(istarts_with(str_command,"save")){
+ save_game();
}
+ /**else if(istarts_with(str_command,"help") ||
istarts_with(str_command,"?")){
+ update_text_log("For a list of extended commands,
type 'commands'.",true,MESSAGE_SYSTEM);
+ }
+
+ else if(istarts_with(str_command,"commands")){
+ update_text_log("help",true,MESSAGE_SYSTEM);
+ }*/
+
else if(istarts_with(str_command,"about")){
string version="";
ss.clear();ss.str("");ss<<"
Version: ";ss<<AutoVersion::MAJOR;ss<<".";ss<<AutoVersion::MINOR;ss<<" ";ss<<AutoVersion::STATUS;version=ss.str();
@@ -285,18 +281,12 @@
update_text_log("--------------------------------------------------------------------------------",true,MESSAGE_SYSTEM);
}
- else if(istarts_with(str_command,"quit") ||
istarts_with(str_command,"exit")){
- quit_game();
+ else if(istarts_with(str_command,"quit") ||
istarts_with(str_command,"exit") || istarts_with(str_command,"leave")){
+ save_game();
}
- else if(istarts_with(str_command,"fullscreen") ||
istarts_with(str_command,"fs")){
- main_window.toggle_fullscreen();
- if(player.option_fullscreen){
- update_text_log("Switched to fullscreen
mode.",true,MESSAGE_SYSTEM);
- }
- else{
- update_text_log("Switched to windowed
mode.",true,MESSAGE_SYSTEM);
- }
+ else if(istarts_with(str_command,"4 8 15 16 23 42")){
+ ///
}
else{
@@ -308,7 +298,7 @@
player.chat_mode=false;
//Make sure that enter is cleared before moving to the next
screen.
- Uint8 *keystates=SDL_GetKeyState(NULL);/**Get keystates.*/
+ Uint8 *keystates=SDL_GetKeyState(NULL);
keystates[SDLK_RETURN]=NULL;
keystates[SDLK_KP_ENTER]=NULL;
}
@@ -317,7 +307,7 @@
player.chat_mode=false;
//Make sure that enter is cleared before moving to the next
screen.
- Uint8 *keystates=SDL_GetKeyState(NULL);/**Get keystates.*/
+ Uint8 *keystates=SDL_GetKeyState(NULL);
keystates[SDLK_RETURN]=NULL;
keystates[SDLK_KP_ENTER]=NULL;
}
@@ -328,7 +318,7 @@
player.chat_mode=false;
//Make sure that escape is cleared before moving to the next
screen.
- Uint8 *keystates=SDL_GetKeyState(NULL);/**Get keystates.*/
+ Uint8 *keystates=SDL_GetKeyState(NULL);
keystates[SDLK_ESCAPE]=NULL;
}
}
=======================================
--- /templates.cpp Thu Apr 21 04:05:54 2011
+++ /templates.cpp Thu Apr 21 19:48:51 2011
@@ -58,7 +58,7 @@
//If the item is armor and no defense was set.
if(item->category==ITEM_ARMOR && item->defense==-1){
- item->defense=(temp_item_size*toughness[item->material])/4.0;
+ item->defense=(temp_item_size*toughness[item->material])/1.5;
//The armor piece should at least have 1 defense.
if(item->defense<=0){
item->defense=1;
@@ -69,13 +69,13 @@
if(item->damage_max_melee==-1){
//If the item is a melee weapon.
if(item->category==ITEM_WEAPON &&
item->weapon_category>=WEAPON_SHORT_BLADES &&
item->weapon_category<=WEAPON_STAVES){
-
item->damage_min_melee=temp_item_size*toughness[item->material]*3.0;
-
item->damage_max_melee=temp_item_size*toughness[item->material]*4.0;
+
item->damage_min_melee=temp_item_size*toughness[item->material]*7.0;
+
item->damage_max_melee=temp_item_size*toughness[item->material]*9.0;
}
//If the item is not a melee weapon.
else{
item->damage_min_melee=1;
- item->damage_max_melee=(temp_item_size*(item->weight/2.0))/4.0;
+ item->damage_max_melee=(temp_item_size*(item->weight/2.0))/2.0;
}
if(item->damage_min_melee<1){
@@ -90,8 +90,8 @@
if(item->damage_max_thrown==-1){
//If the item is a thrown weapon.
if(item->category==ITEM_WEAPON &&
item->weapon_category==WEAPON_THROWN){
-
item->damage_min_thrown=temp_item_size*toughness[item->material]*3.0;
-
item->damage_max_thrown=temp_item_size*toughness[item->material]*4.0;
+
item->damage_min_thrown=(temp_item_size*4.0)*toughness[item->material]*6.0;
+
item->damage_max_thrown=(temp_item_size*6.0)*toughness[item->material]*8.0;
}
//If the item is not a thrown weapon.
else{
@@ -111,8 +111,8 @@
if(item->damage_max_ranged==-1){
//If the item is a ranged weapon.
if(item->category==ITEM_WEAPON &&
item->weapon_category>=WEAPON_BOWS && item->weapon_category<=WEAPON_SLINGS){
-
item->damage_min_ranged=temp_item_size*toughness[item->material]*0.25;
-
item->damage_max_ranged=temp_item_size*toughness[item->material]*0.35;
+
item->damage_min_ranged=temp_item_size*toughness[item->material]*3.0;
+
item->damage_max_ranged=temp_item_size*toughness[item->material]*4.0;
if(item->damage_min_ranged<1){
item->damage_min_ranged=1;
=======================================
--- /version.h Thu Apr 21 04:05:54 2011
+++ /version.h Thu Apr 21 19:48:51 2011
@@ -16,17 +16,17 @@
//Standard Version Type
static const long MAJOR = 0;
static const long MINOR = 4;
- static const long BUILD = 3083;
- static const long REVISION = 17085;
+ static const long BUILD = 3116;
+ static const long REVISION = 17262;
//Miscellaneous Version Types
- static const long BUILDS_COUNT = 7250;
- #define RC_FILEVERSION 0,4,3083,17085
- #define RC_FILEVERSION_STRING "0, 4, 3083, 17085\0"
- static const char FULLVERSION_STRING[] = "0.4.3083.17085";
+ static const long BUILDS_COUNT = 7394;
+ #define RC_FILEVERSION 0,4,3116,17262
+ #define RC_FILEVERSION_STRING "0, 4, 3116, 17262\0"
+ static const char FULLVERSION_STRING[] = "0.4.3116.17262";
//These values are to keep track of your versioning state, don't modify
them.
- static const long BUILD_HISTORY = 23;
+ static const long BUILD_HISTORY = 56;
}
==============================================================================
Revision: f2e4b50b5220
Author: Kevin Wells <DarkOp...@gmail.com>
Date: Thu Apr 21 20:17:18 2011
Log: Made a Windows release.
http://code.google.com/p/escape-from-the-masters-lair/source/detail?r=f2e4b50b5220
Modified:
/Escape from the Master's Lair.cbp
/Escape from the Master's Lair.layout
/docs/guidebook
/docs/readme
/player.cpp
/string_input.cpp
/version.h
=======================================
--- /Escape from the Master's Lair.cbp Thu Apr 21 00:29:03 2011
+++ /Escape from the Master's Lair.cbp Thu Apr 21 20:17:18 2011
@@ -8,21 +8,22 @@
<Build>
<Target title="Release-Windows">
<Option platforms="Windows;" />
- <Option output="bin/Release-Windows/Escape.exe" prefix_auto="1"
extension_auto="0" />
+ <Option output="bin\Release-Windows\Escape.exe" prefix_auto="1"
extension_auto="0" />
<Option working_dir="" />
- <Option object_output="obj/Release-Windows/" />
+ <Option object_output="obj\Release-Windows\" />
<Option type="5" />
<Option compiler="gcc" />
<Compiler>
- <Add option="-O2" />
+ <Add option="-fexpensive-optimizations" />
+ <Add option="-O3" />
<Add option="-w" />
- <Add directory="../../MinGW/include" />
- <Add directory="../../SDL/include/SDL" />
- <Add directory="../../SDL/SDL_image/include" />
- <Add directory="../../SDL/SDL_gfx/include" />
- <Add directory="../../SDL/SDL_mixer/include" />
- <Add directory="../../glew/include/GL" />
- <Add directory="../../Boost" />
+ <Add directory="..\..\MinGW\include" />
+ <Add directory="..\..\SDL\include\SDL" />
+ <Add directory="..\..\SDL\SDL_image\include" />
+ <Add directory="..\..\SDL\SDL_gfx\include" />
+ <Add directory="..\..\SDL\SDL_mixer\include" />
+ <Add directory="..\..\glew\include\GL" />
+ <Add directory="..\..\Boost" />
</Compiler>
<Linker>
<Add option="-s" />
@@ -32,21 +33,21 @@
<Add option="-lSDL" />
<Add option="-mwindows" />
<Add option="-Wl,--stack,16777216" />
- <Add library="../../SDL/lib/libSDL.dll.a" />
- <Add library="../../SDL/lib/libSDLmain.a" />
- <Add library="../../glew/lib/glew32s.lib" />
- <Add library="../../MinGW/lib/libopengl32.a" />
- <Add library="../../MinGW/lib/libglu32.a" />
- <Add library="../../SDL/SDL_image/lib/SDL_image.lib" />
- <Add library="../../SDL/SDL_gfx/lib/libSDL_gfx.dll.a" />
- <Add library="../../SDL/SDL_mixer/lib/SDL_mixer.lib" />
- <Add
library="../../Boost/stage/lib/libboost_system-mgw45-mt-1_46_1.a" />
- <Add
library="../../Boost/stage/lib/libboost_filesystem-mgw45-mt-1_46_1.a" />
- <Add
library="../../Boost/stage/lib/libboost_iostreams-mgw45-mt-1_46_1.a" />
- <Add library="../../Boost/stage/lib/libboost_bzip2-mgw45-mt-1_46_1.a"
/>
- <Add directory="../../SDL/lib" />
- <Add directory="../../glew/lib" />
- <Add directory="../../Boost/stage/lib" />
+ <Add library="..\..\SDL\lib\libSDL.dll.a" />
+ <Add library="..\..\SDL\lib\libSDLmain.a" />
+ <Add library="..\..\glew\lib\glew32s.lib" />
+ <Add library="..\..\MinGW\lib\libopengl32.a" />
+ <Add library="..\..\MinGW\lib\libglu32.a" />
+ <Add library="..\..\SDL\SDL_image\lib\SDL_image.lib" />
+ <Add library="..\..\SDL\SDL_gfx\lib\libSDL_gfx.dll.a" />
+ <Add library="..\..\SDL\SDL_mixer\lib\SDL_mixer.lib" />
+ <Add
library="..\..\Boost\stage\lib\libboost_system-mgw45-mt-1_46_1.a" />
+ <Add
library="..\..\Boost\stage\lib\libboost_filesystem-mgw45-mt-1_46_1.a" />
+ <Add
library="..\..\Boost\stage\lib\libboost_iostreams-mgw45-mt-1_46_1.a" />
+ <Add library="..\..\Boost\stage\lib\libboost_bzip2-mgw45-mt-1_46_1.a"
/>
+ <Add directory="..\..\SDL\lib" />
+ <Add directory="..\..\glew\lib" />
+ <Add directory="..\..\Boost\stage\lib" />
</Linker>
</Target>
<Target title="Release-Linux">
@@ -59,28 +60,28 @@
<Add option="-fexpensive-optimizations" />
<Add option="-O3" />
<Add option="-w" />
- <Add directory="/usr/include/SDL/" />
- <Add directory="/usr/include/" />
- <Add directory="/usr/include/GL/" />
- <Add directory="../../boost" />
+ <Add directory="\usr\include\SDL\" />
+ <Add directory="\usr\include\" />
+ <Add directory="\usr\include\GL\" />
+ <Add directory="..\..\boost" />
</Compiler>
<Linker>
<Add option="-s" />
<Add option="-lSDLmain" />
<Add option="-lSDL" />
- <Add library="/usr/lib64/libSDL.so" />
- <Add library="/usr/lib64/libSDLmain.a" />
- <Add library="/usr/lib64/libGLEW.so" />
- <Add library="/usr/lib64/libGL.so" />
- <Add library="/usr/lib64/libGLU.so" />
- <Add library="/usr/lib64/libSDL_image.so" />
- <Add library="/usr/lib64/libSDL_gfx.so" />
- <Add library="/usr/lib64/libSDL_mixer.so" />
- <Add library="../../boost/stage/lib/libboost_system.so" />
- <Add library="../../boost/stage/lib/libboost_filesystem.so" />
- <Add library="../../boost/stage/lib/libboost_iostreams.so" />
- <Add directory="/usr/lib64/" />
- <Add directory="../../boost/stage/lib" />
+ <Add library="\usr\lib64\libSDL.so" />
+ <Add library="\usr\lib64\libSDLmain.a" />
+ <Add library="\usr\lib64\libGLEW.so" />
+ <Add library="\usr\lib64\libGL.so" />
+ <Add library="\usr\lib64\libGLU.so" />
+ <Add library="\usr\lib64\libSDL_image.so" />
+ <Add library="\usr\lib64\libSDL_gfx.so" />
+ <Add library="\usr\lib64\libSDL_mixer.so" />
+ <Add library="..\..\boost\stage\lib\libboost_system.so" />
+ <Add library="..\..\boost\stage\lib\libboost_filesystem.so" />
+ <Add library="..\..\boost\stage\lib\libboost_iostreams.so" />
+ <Add directory="\usr\lib64\" />
+ <Add directory="..\..\boost\stage\lib" />
</Linker>
</Target>
</Build>
=======================================
--- /Escape from the Master's Lair.layout Thu Apr 21 19:48:51 2011
+++ /Escape from the Master's Lair.layout Thu Apr 21 20:17:18 2011
@@ -214,8 +214,8 @@
<File name="pixels.h" open="0" top="0" tabpos="0" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="132" topLine="0" />
</File>
- <File name="player.cpp" open="1" top="1" tabpos="1" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="7202" topLine="219" />
+ <File name="player.cpp" open="0" top="0" tabpos="1" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
+ <Cursor1 position="29723" topLine="651" />
</File>
<File name="player.h" open="0" top="0" tabpos="7" split="0" active="1"
splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="3347" topLine="106" />
@@ -269,7 +269,7 @@
<Cursor1 position="172" topLine="0" />
</File>
<File name="string_input.cpp" open="0" top="0" tabpos="3" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
- <Cursor1 position="5030" topLine="183" />
+ <Cursor1 position="11454" topLine="280" />
</File>
<File name="string_input.h" open="0" top="0" tabpos="0" split="0"
active="1" splitpos="0" zoom_1="0" zoom_2="0">
<Cursor1 position="242" topLine="0" />
=======================================
--- /docs/guidebook Thu Apr 21 19:48:51 2011
+++ /docs/guidebook Thu Apr 21 20:17:18 2011
@@ -52,7 +52,7 @@
== Controls ==
- == Movement ==
+ == Exploring the Lair ==
You can move in 8 different directions.
You have a few options for going about this:
@@ -73,12 +73,75 @@
/ | \
b(down left) j(down) n(down right)
+ To go up stairs, press '<'.
+
+ To go down stairs, press '>'.
+
+ To pick something up, press ','.
+
+ To rest a turn, press '.'.
+
+ To search the area around you, press 's'.
+
+ To open a door, press 'o'.
+
+ To close a door, press 'c'.
+
+ == Windows ==
+
+ To open your inventory, press 'i'.
+
+ To open your stats screen, press 'F1'.
+
== Combat ==
- To attack a monster with melee, simply "walk" into them.
-
- To throw an item, press 't' and then the letter that represents the item
you wish to throw.
+ To attack a monster with melee, simply "walk" into them.
+
+ To throw an item, press 't' and then the letter that represents the item
you wish to throw.
+
+ To fire whatever is in your quiver with your currently equipped launcher
weapon, press 'f'.
+
+ == Managing your Inventory ==
+
+ To drop something, press 'd'.
+
+ To drink something (also called quaffing), press 'q'.
+
+ To equip something in your left hand, press '1'.
+
+ To equip something in your right hand, press '2'.
+
+ To equip a launcher weapon, such as a bow or a sling, press '3'.
+
+ To place an item in your quiver, press '4'.
+
+ To wear some armor, press 'w'.
+
+ To remove any kind of equipment (weapons, armor, whatever), press 'r'.
+
+ To use an item, press 'a'.
+
+ To mix two items together, press 'm'.
+
+ To read an item, press R.
+
+ To examine an item, press 'e'.
== Extended Commands ==
-
+ You can bring up a console box by pressing the enter key. Here, you can
type extended commands. Don't worry, there are only a few of these! You can
close the box at any time with the escape key.
+
+ hb - Toggles the health bar display option.
+
+ hl - Toggles the highlight self option.
+
+ fps - Toggles the FPS (frames per second) display option.
+
+ fs - Toggles fullscreen mode.
+
+ save - Saves your game!
+
+ about - Gives you some information about the game.
+
+ quit - Quits the game.
+
=======================================
--- /docs/readme Thu Apr 21 04:05:54 2011
+++ /docs/readme Thu Apr 21 20:17:18 2011
@@ -1,7 +1,7 @@
//-------------------------\\
// \\
// Escape from the Master's Lair \\
- // Version 0.4 \\ v
+ // Version 0.5 \\ v
~*~ // \\ **~/_\
== Welcome! ==
=======================================
--- /player.cpp Thu Apr 21 19:48:51 2011
+++ /player.cpp Thu Apr 21 20:17:18 2011
@@ -519,21 +519,21 @@
}
//Equip item in right hand.
- else if(input_inventory==INVENTORY_COMMAND_NONE &&
input_directional==DIRECTIONAL_COMMAND_NONE &&
event.key.keysym.unicode==(Uint16)'1'){
+ else if(input_inventory==INVENTORY_COMMAND_NONE &&
input_directional==DIRECTIONAL_COMMAND_NONE &&
event.key.keysym.unicode==(Uint16)'2'){
update_text_log("What do you want to wield in
your right hand? [?*]",is_player);
input_inventory=INVENTORY_COMMAND_EQUIP_RIGHT_HAND;
}
//Equip item in left hand.
- else if(input_inventory==INVENTORY_COMMAND_NONE &&
input_directional==DIRECTIONAL_COMMAND_NONE &&
event.key.keysym.unicode==(Uint16)'2'){
+ else if(input_inventory==INVENTORY_COMMAND_NONE &&
input_directional==DIRECTIONAL_COMMAND_NONE &&
event.key.keysym.unicode==(Uint16)'1'){
update_text_log("What do you want to wield in
your left hand? [?*]",is_player);
input_inventory=INVENTORY_COMMAND_EQUIP_LEFT_HAND;
}
//Quiver item.
- else if(input_inventory==INVENTORY_COMMAND_NONE &&
input_directional==DIRECTIONAL_COMMAND_NONE &&
event.key.keysym.unicode==(Uint16)'Q'){
+ else if(input_inventory==INVENTORY_COMMAND_NONE &&
input_directional==DIRECTIONAL_COMMAND_NONE &&
event.key.keysym.unicode==(Uint16)'4'){
update_text_log("What do you want to quiver?
[?*]",is_player);
input_inventory=INVENTORY_COMMAND_QUIVER_ITEM;
@@ -666,7 +666,7 @@
//Toggle fullscreen.
//This is located here in the code because it needs to come before the
chat toggle,
//which also uses SDLK_RETURN.
- if((keystates[SDLK_LALT] || keystates[SDLK_RALT]) &&
keystates[SDLK_RETURN]){
+ if(((keystates[SDLK_LALT] || keystates[SDLK_RALT]) &&
keystates[SDLK_RETURN]) || keystates[SDLK_F11]){
main_window.toggle_fullscreen();
if(keystates[SDLK_LALT]){
@@ -676,6 +676,7 @@
keystates[SDLK_RALT]=NULL;
}
keystates[SDLK_RETURN]=NULL;
+ keystates[SDLK_F11]=NULL;
}
if(!chat_mode && current_window==WINDOW_NONE){
=======================================
--- /string_input.cpp Thu Apr 21 19:48:51 2011
+++ /string_input.cpp Thu Apr 21 20:17:18 2011
@@ -281,7 +281,7 @@
update_text_log("--------------------------------------------------------------------------------",true,MESSAGE_SYSTEM);
}
- else if(istarts_with(str_command,"quit") ||
istarts_with(str_command,"exit") || istarts_with(str_command,"leave")){
+ else if(istarts_with(str_command,"quit")){
save_game();
}
=======================================
--- /version.h Thu Apr 21 19:48:51 2011
+++ /version.h Thu Apr 21 20:17:18 2011
@@ -15,18 +15,18 @@
//Standard Version Type
static const long MAJOR = 0;
- static const long MINOR = 4;
- static const long BUILD = 3116;
- static const long REVISION = 17262;
+ static const long MINOR = 5;
+ static const long BUILD = 3117;
+ static const long REVISION = 17267;
//Miscellaneous Version Types
static const long BUILDS_COUNT = 7394;
- #define RC_FILEVERSION 0,4,3116,17262
- #define RC_FILEVERSION_STRING "0, 4, 3116, 17262\0"
- static const char FULLVERSION_STRING[] = "0.4.3116.17262";
+ #define RC_FILEVERSION 0,5,3117,17267
+ #define RC_FILEVERSION_STRING "0, 5, 3117, 17267\0"
+ static const char FULLVERSION_STRING[] = "0.5.3117.17267";
//These values are to keep track of your versioning state, don't modify
them.
- static const long BUILD_HISTORY = 56;
+ static const long BUILD_HISTORY = 57;
}