[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[adonthell-wastesedge-commits] Release_0-3-1 b770dc8 111/237: ADDED 'nam
From: |
Kai Sterker |
Subject: |
[adonthell-wastesedge-commits] Release_0-3-1 b770dc8 111/237: ADDED 'name your character' dialog that pops up when starting a new game |
Date: |
Mon, 25 Jul 2016 18:15:02 +0000 (UTC) |
tag: Release_0-3-1
commit b770dc8363ab36e47e738ea2998819e7d87ca145
Author: adondev <adondev>
Commit: adondev <adondev>
ADDED 'name your character' dialog that pops up when starting a new game
---
scripts/init.py | 1403 ++++++++++++++++++-----------------
scripts/modules/character_screen.py | 91 +++
scripts/modules/console.py | 51 +-
3 files changed, 828 insertions(+), 717 deletions(-)
diff --git a/scripts/init.py b/scripts/init.py
index 783e1ce..d52b2b4 100755
--- a/scripts/init.py
+++ b/scripts/init.py
@@ -37,7 +37,7 @@ def fade_in ():
while i > 0:
gamedata_map_engine ().mainloop ()
- screen_transition(i * 2)
+ screen_transition (i * 2)
screen_show ()
gametime_update ()
@@ -220,708 +220,719 @@ class title_screen:
if retval < 5:
gamedata_map_engine ().set_should_update_map (1)
+ # -- start new game
if retval == 1:
gamedata_load_characters (0)
gamedata_load_quests (0)
- the_player = gamedata_player ()
-
- # Creates the map engine context for the game start
- gamedata_map_engine ().load_map ("test.map")
-
- lm = gamedata_map_engine ().get_landmap ()
- the_player.set_val ("gender", MALE)
- the_player.set_val ("race", HALFELF)
- the_player.load ("player.mchar")
- the_player.set_map (lm)
- the_player.jump_to (0, 11, 18, STAND_EAST)
- the_player.set_schedule ("keyboard_control")
- gamedata_map_engine ().set_mapview_schedule
("center_character", (the_player.get_name (),))
-
-
- # Setting up the map events
- # Teleport events
-
- # From yard to common room
- # Open the inn door event
- ev = leave_event ()
- ev.thisown = C
- ev.submap = 0
- ev.x = 18
- ev.y = 14
- ev.dir = WALK_NORTH
- ev.set_script ("open_inn_door")
- lm.add_event (ev)
-
- # Close the inn door event
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 0
- ev.x = 18
- ev.y = 13
- ev.set_script ("open_inn_door")
- lm.add_event (ev)
-
- # Teleport event
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 0
- ev.x = 18
- ev.y = 13
- ev.set_script ("teleport", (1, 13, 7, STAND_NORTH))
- lm.add_event (ev)
-
- # From common room to yard
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 1
- ev.x = 13
- ev.y = 8
- ev.set_script ("teleport", (0, 18, 14, STAND_SOUTH))
- lm.add_event (ev)
-
- # From common room to parlor
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 1
- ev.x = 14
- ev.y = 4
- ev.set_script ("teleport", (2, 1, 4, STAND_EAST))
- lm.add_event (ev)
-
- # From parlor to common room
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 2
- ev.x = 0
- ev.y = 4
- ev.set_script ("teleport", (1, 13, 4, STAND_WEST))
- lm.add_event (ev)
-
- # From common room to kitchen
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 1
- ev.x = 1
- ev.y = 8
- ev.set_script ("teleport", (3, 1, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From kitchen to common room
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 3
- ev.x = 1
- ev.y = 1
- ev.set_script ("teleport", (1, 1, 7, STAND_NORTH))
- lm.add_event (ev)
-
- # From kitchen to yard
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 3
- ev.x = 7
- ev.y = 3
- ev.set_script ("teleport", (0, 12, 14, STAND_EAST))
- lm.add_event (ev)
-
- # From yard to kitchen
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 0
- ev.x = 11
- ev.y = 14
- ev.set_script ("teleport", (3, 6, 3, STAND_WEST))
- lm.add_event (ev)
-
- # From cellar to bathroom
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 3
- ev.y = 5
- ev.set_script ("teleport", (5, 4, 6, STAND_NORTH))
- lm.add_event (ev)
-
- # From bathroom to cellar
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 5
- ev.x = 4
- ev.y = 7
- ev.set_script ("teleport", (4, 3, 6, STAND_SOUTH))
- lm.add_event (ev)
-
- # From cellar to alek's
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 0
- ev.y = 6
- ev.set_script ("teleport", (6, 5, 6, STAND_WEST))
- lm.add_event (ev)
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 0
- ev.y = 7
- ev.set_script ("teleport", (6, 5, 7, STAND_WEST))
- lm.add_event (ev)
-
- # From alek's to cellar
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 6
- ev.x = 6
- ev.y = 6
- ev.set_script ("teleport", (4, 1, 6, STAND_EAST))
- lm.add_event (ev)
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 6
- ev.x = 6
- ev.y = 7
- ev.set_script ("teleport", (4, 1, 7, STAND_EAST))
- lm.add_event (ev)
-
- # From cellar to storage
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 0
- ev.y = 9
- ev.set_script ("teleport", (8, 6, 3, STAND_WEST))
- lm.add_event (ev)
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 0
- ev.y = 10
- ev.set_script ("teleport", (8, 6, 4, STAND_WEST))
- lm.add_event (ev)
-
- # From storage to cellar
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 8
- ev.x = 7
- ev.y = 3
- ev.set_script ("teleport", (4, 1, 9, STAND_EAST))
- lm.add_event (ev)
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 8
- ev.x = 7
- ev.y = 4
- ev.set_script ("teleport", (4, 1, 10, STAND_EAST))
- lm.add_event (ev)
-
- # From cellar to dwarves'
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 10
- ev.y = 6
- ev.set_script ("cellar_to_bjarn", (7, 1, 6, STAND_EAST))
- lm.add_event (ev)
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 10
- ev.y = 7
- ev.set_script ("cellar_to_bjarn", (7, 1, 7, STAND_EAST))
- lm.add_event (ev)
-
- # From dwarves' to cellar
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 7
- ev.x = 0
- ev.y = 6
- ev.set_script ("teleport", (4, 9, 6, STAND_WEST))
- lm.add_event (ev)
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 7
- ev.x = 0
- ev.y = 7
- ev.set_script ("teleport", (4, 9, 7, STAND_WEST))
- lm.add_event (ev)
-
- # From 1st to Fellnir's
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 9
- ev.x = 9
- ev.y = 2
- ev.set_script ("teleport", (10, 1, 3, STAND_EAST))
- lm.add_event (ev)
-
- # From Fellnir's to 1st
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 10
- ev.x = 0
- ev.y = 3
- ev.set_script ("teleport", (9, 8, 2, STAND_WEST))
- lm.add_event (ev)
-
- # From 1st to Frostbloom's
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 9
- ev.x = 0
- ev.y = 2
- ev.set_script ("teleport", (11, 4, 3, STAND_WEST))
- lm.add_event (ev)
-
- # From Frostbloom's to 1st
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 11
- ev.x = 5
- ev.y = 3
- ev.set_script ("teleport", (9, 1, 2, STAND_EAST))
- lm.add_event (ev)
-
- # From 1st to Player's
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 9
- ev.x = 7
- ev.y = 4
- ev.set_script ("teleport", (12, 5, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From Player's to 1st
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 12
- ev.x = 5
- ev.y = 1
- ev.set_script ("teleport", (9, 7, 3, STAND_NORTH))
- lm.add_event (ev)
-
- # From 1st to Silverhair's
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 9
- ev.x = 1
- ev.y = 7
- ev.set_script ("fst_to_silverhair", (13, 5, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From Silverhair's to 1st
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 13
- ev.x = 5
- ev.y = 1
- ev.set_script ("teleport", (9, 1, 6, STAND_NORTH))
- lm.add_event (ev)
-
- # From 2nd to Redwyne's
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 14
- ev.x = 3
- ev.y = 5
- ev.set_script ("teleport", (15, 1, 5, STAND_EAST))
- lm.add_event (ev)
-
- # From Redwyne's to 2nd
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 15
- ev.x = 0
- ev.y = 5
- ev.set_script ("teleport", (14, 2, 5, STAND_WEST))
- lm.add_event (ev)
-
- # From 2nd to Oliver's
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 14
- ev.x = 0
- ev.y = 5
- ev.set_script ("teleport", (16, 6, 5, STAND_WEST))
- lm.add_event (ev)
-
- # From Oliver's to 2nd
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 16
- ev.x = 7
- ev.y = 5
- ev.set_script ("teleport", (14, 1, 5, STAND_EAST))
- lm.add_event (ev)
-
- # From 2nd to Illig's
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 14
- ev.x = 1
- ev.y = 8
- ev.set_script ("teleport", (17, 6, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From Illig's to 2nd
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 17
- ev.x = 6
- ev.y = 1
- ev.set_script ("teleport", (14, 1, 7, STAND_NORTH))
- lm.add_event (ev)
-
- # From common room to 1st
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 1
- ev.x = 12
- ev.y = 1
- ev.set_script ("teleport", (9, 8, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From 1st to common room
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 9
- ev.x = 8
- ev.y = 1
- ev.set_script ("teleport", (1, 12, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From 1st to 2nd
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 9
- ev.x = 6
- ev.y = 1
- ev.set_script ("teleport", (14, 4, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From 2nd to 1st
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 14
- ev.x = 4
- ev.y = 1
- ev.set_script ("teleport", (9, 6, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From common room to cellar
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 1
- ev.x = 9
- ev.y = 1
- ev.set_script ("teleport", (4, 6, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From cellar to common room
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 6
- ev.y = 1
- ev.set_script ("teleport", (1, 9, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From cellar to barn
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 12
- ev.y = 1
- ev.set_script ("teleport", (0, 24, 11, STAND_SOUTH))
- lm.add_event (ev)
-
- # From barn to cellar
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 0
- ev.x = 24
- ev.y = 10
- ev.set_script ("teleport", (4, 12, 2, STAND_SOUTH))
- lm.add_event (ev)
-
- # From cellar to kitchen
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 4
- ev.x = 3
- ev.y = 13
- ev.set_script ("teleport", (3, 6, 5, STAND_NORTH))
- lm.add_event (ev)
-
- # From kitchen to cellar
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 3
- ev.x = 6
- ev.y = 6
- ev.set_script ("teleport", (4, 3, 12, STAND_NORTH))
- lm.add_event (ev)
-
- # From yard to guards'
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 0
- ev.x = 12
- ev.y = 23
- ev.set_script ("teleport", (18, 7, 3, STAND_WEST))
- lm.add_event (ev)
-
- # From guards' to yard
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 18
- ev.x = 8
- ev.y = 3
- ev.set_script ("teleport", (0, 13, 23, STAND_EAST))
- lm.add_event (ev)
-
- # From guards ground to guards 1st
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 18
- ev.x = 1
- ev.y = 8
- ev.set_script ("teleport", (19, 2, 8, STAND_EAST))
- lm.add_event (ev)
-
- # From guards 1st to guards ground
- ev = enter_event ()
- ev.thisown = C
- ev.submap = 19
- ev.x = 1
- ev.y = 8
- ev.set_script ("teleport", (18, 2, 8, STAND_EAST))
- lm.add_event (ev)
-
-
- # Action events
- ev = action_event ()
- ev.thisown = C
- ev.submap = 1
- ev.x = 10
- ev.y = 2
- ev.dir = STAND_NORTH
- ev.set_script ("character_speak", (the_player.get_name (), \
- "That clock seems to be
late!"))
- lm.add_event (ev)
-
- ev = action_event ()
- ev.thisown = C
- ev.submap = 10
- ev.x = 3
- ev.y = 6
- ev.dir = STAND_NORTH
- ev.set_script ("character_speak", (the_player.get_name (), \
- "I'd better not touch
this... What if it explodes??"))
- lm.add_event (ev)
-
- ev = action_event ()
- ev.thisown = C
- ev.submap = 10
- ev.x = 4
- ev.y = 6
- ev.dir = STAND_NORTH
- ev.set_script ("character_speak", (the_player.get_name (), \
- "I'd better not touch
this... What if it explodes??"))
- lm.add_event (ev)
-
- ev = action_event ()
- ev.thisown = C
- ev.submap = 10
- ev.x = 2
- ev.y = 5
- ev.dir = STAND_EAST
- ev.set_script ("character_speak", (the_player.get_name (), \
- "I'd better not touch
this... What if it explodes??"))
- lm.add_event (ev)
-
- ev = action_event ()
- ev.thisown = C
- ev.submap = 10
- ev.x = 5
- ev.y = 5
- ev.dir = STAND_WEST
- ev.set_script ("character_speak", (the_player.get_name (), \
- "I'd better not touch
this... What if it explodes??"))
- lm.add_event (ev)
-
- ev = action_event ()
- ev.thisown = C
- ev.submap = 10
- ev.x = 3
- ev.y = 4
- ev.dir = STAND_SOUTH
- ev.set_script ("character_speak", (the_player.get_name (), \
- "I'd better not touch
this... What if it explodes??"))
- lm.add_event (ev)
-
- ev = action_event ()
- ev.thisown = C
- ev.submap = 10
- ev.x = 4
- ev.y = 4
- ev.dir = STAND_SOUTH
- ev.set_script ("character_speak", (the_player.get_name (), \
- "I'd better not touch
this... What if it explodes??"))
- lm.add_event (ev)
-
- # Now setup the characters
- lucia = gamedata_get_character ("Lucia Redwyne")
- lucia.set_dialogue ("dialogues/lucia_start")
- lucia.load ("lucia.mchar")
- lucia.set_map (gamedata_map_engine ().get_landmap ())
- lucia.jump_to (3, 4, 2)
- lucia.set_action ("talk")
- lucia.stand_south ()
- lucia.set_portrait ("lucia.pnm")
-
- orloth = gamedata_get_character ("Orloth Redwyne")
- orloth.set_dialogue ("dialogues/orloth_start")
- orloth.load ("orloth.mchar")
- orloth.set_map (gamedata_map_engine ().get_landmap ())
- orloth.jump_to (1, 2, 2)
- orloth.set_action ("talk")
- orloth.stand_south ()
- orloth.set_schedule ("orloth")
- orloth.set_portrait ("orloth.pnm")
-
- erek = gamedata_get_character ("Erek Stonebreaker")
- erek.set_dialogue ("dialogues/erek_start")
- erek.load ("erek.mchar")
- erek.set_map (gamedata_map_engine ().get_landmap ())
- erek.jump_to (1, 5, 5)
- erek.set_action ("talk")
- erek.stand_north ()
- # changed Erek's text color to violet
- erek.set_color (3)
- erek.set_schedule ("erek")
- erek.set_portrait ("erek.pnm")
-
- talan = gamedata_get_character ("Talan Wendth")
- talan.set_dialogue ("dialogues/talan_start")
- talan.load ("talan.mchar")
- talan.set_map (gamedata_map_engine ().get_landmap ())
- talan.jump_to (0, 11, 19)
- talan.set_action ("talk")
- talan.stand_north ()
- talan.set_schedule ("talan")
- talan.set_portrait ("talan.pnm")
-
- jelom = gamedata_get_character ("Jelom Rasgar")
- jelom.set_dialogue ("dialogues/jelom_start")
- jelom.load ("jelom.mchar")
- jelom.set_map (gamedata_map_engine ().get_landmap ())
- jelom.jump_to (9, 2, 6)
- jelom.set_action ("talk")
- jelom.stand_north ()
- jelom.set_schedule ("jelom")
- jelom.set_portrait ("jelom.pnm")
-
- alek = gamedata_get_character ("Alek Endhelm")
- alek.set_dialogue ("dialogues/alek_start")
- alek.load ("alek.mchar")
- alek.set_map (gamedata_map_engine ().get_landmap ())
- alek.jump_to (1, 1, 3)
- alek.set_action ("talk")
- alek.stand_south ()
- alek.set_schedule ("alek")
- alek.set_portrait ("alek.pnm")
-
- oliver = gamedata_get_character ("Oliver Redwyne")
- oliver.set_dialogue ("dialogues/oliver_start")
- oliver.load ("oliver.mchar")
- oliver.set_map (gamedata_map_engine ().get_landmap ())
- oliver.jump_to (0, 25, 15)
- oliver.set_action ("talk")
- oliver.stand_west ()
- oliver.set_schedule ("oliver")
- oliver.set_portrait ("oliver.pnm")
-
- frostbloom = gamedata_get_character ("Rhayne Frostbloom")
- frostbloom.set_dialogue ("dialogues/frostbloom_start")
- frostbloom.load ("frostbloom.mchar")
- frostbloom.set_map (gamedata_map_engine ().get_landmap ())
- frostbloom.jump_to (0, 18, 22)
- frostbloom.set_action ("talk")
- frostbloom.stand_north ()
- frostbloom.set_schedule ("frostbloom")
- frostbloom.set_portrait ("frostbloom.pnm")
-
- bjarn = gamedata_get_character ("Bjarn Fingolson")
- bjarn.set_dialogue ("dialogues/bjarn_start")
- bjarn.load ("bjarn.mchar")
- bjarn.set_map (gamedata_map_engine ().get_landmap ())
- bjarn.jump_to (7, 3, 6)
- bjarn.set_action ("talk")
- bjarn.stand_west ()
- bjarn.set_portrait ("bjarn.pnm")
-
- silverhair = gamedata_get_character ("Imoen Silverhair")
- silverhair.load ("silverhair.mchar")
- silverhair.set_map (gamedata_map_engine ().get_landmap ())
- silverhair.jump_to (13, 4, 4)
- silverhair.set_action ("talk")
- silverhair.stand_south ()
- silverhair.set_schedule ("silverhair")
- silverhair.set_portrait ("silverhair.pnm")
-
- sarin = gamedata_get_character ("Sarin Trailfollower")
- sarin.set_dialogue ("dialogues/sarin_start")
- sarin.load ("servant2.mchar")
- sarin.set_map (gamedata_map_engine ().get_landmap ())
- sarin.jump_to (13, 5, 3)
- sarin.set_action ("talk")
- sarin.stand_west ()
- sarin.set_schedule ("sarin")
- sarin.set_portrait ("sarin.pnm")
-
- janesta = gamedata_get_character ("Janesta Skywind")
- janesta.set_dialogue ("dialogues/janesta_start")
- janesta.load ("servant1.mchar")
- janesta.set_map (gamedata_map_engine ().get_landmap ())
- janesta.jump_to (13, 6, 3)
- janesta.set_action ("talk")
- janesta.stand_north ()
- janesta.set_schedule ("janesta")
- janesta.set_portrait ("janesta.pnm")
-
- fellnir = gamedata_get_character ("Fellnir Kezular")
- fellnir.set_dialogue ("dialogues/fellnir_start")
- fellnir.load ("fellnir.mchar")
- fellnir.set_map (gamedata_map_engine ().get_landmap ())
- fellnir.jump_to (10, 4, 4)
- fellnir.set_action ("talk")
- fellnir.stand_south ()
- fellnir.set_schedule ("fellnir")
- fellnir.set_portrait ("fellnir.pnm")
-
- tristan = gamedata_get_character ("Tristan Illig")
- tristan.set_dialogue ("dialogues/tristan_start")
- tristan.load ("illig.mchar")
- tristan.set_map (gamedata_map_engine ().get_landmap ())
- tristan.jump_to (1, 4, 6)
- tristan.set_action ("talk")
- tristan.stand_west ()
- tristan.set_schedule ("tristan")
- tristan.set_portrait ("illig.pnm")
-
- # Once we want to generate the data context files,
- # just call gamedata::save (1) and copy the .data files
- # to the game's root directory.
-
- audio_play_background (1)
- gametime_update ()
- fade_in ()
+ # let the player chose a name for his character
+ from character_screen import *
+ self.cs = character_screen ()
+ self.cs.thisown = C
+ self.cs.py_signal_connect (self.on_cs_close, win_event_CLOSE)
+
+ win_manager_add (self.cs)
+ win_manager_set_focus (self.cs)
+
else:
gamedata_map_engine ().quit ()
+ def on_cs_close (self, retval):
+ # Creates the map engine context for the game start
+ gamedata_map_engine ().load_map ("test.map")
+ lm = gamedata_map_engine ().get_landmap ()
+
+ the_player = gamedata_player ()
+
+ the_player.set_val ("gender", MALE)
+ the_player.set_val ("race", HALFELF)
+ the_player.load ("player.mchar")
+ the_player.set_map (lm)
+ the_player.jump_to (0, 11, 18, STAND_EAST)
+ the_player.set_schedule ("keyboard_control")
+ gamedata_map_engine ().set_mapview_schedule ("center_character",
(the_player.get_name (),))
+
+ # Setting up the map events
+ # Teleport events
+
+ # From yard to common room
+ # Open the inn door event
+ ev = leave_event ()
+ ev.thisown = C
+ ev.submap = 0
+ ev.x = 18
+ ev.y = 14
+ ev.dir = WALK_NORTH
+ ev.set_script ("open_inn_door")
+ lm.add_event (ev)
+
+ # Close the inn door event
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 0
+ ev.x = 18
+ ev.y = 13
+ ev.set_script ("open_inn_door")
+ lm.add_event (ev)
+
+ # Teleport event
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 0
+ ev.x = 18
+ ev.y = 13
+ ev.set_script ("teleport", (1, 13, 7, STAND_NORTH))
+ lm.add_event (ev)
+
+ # From common room to yard
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 1
+ ev.x = 13
+ ev.y = 8
+ ev.set_script ("teleport", (0, 18, 14, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From common room to parlor
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 1
+ ev.x = 14
+ ev.y = 4
+ ev.set_script ("teleport", (2, 1, 4, STAND_EAST))
+ lm.add_event (ev)
+
+ # From parlor to common room
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 2
+ ev.x = 0
+ ev.y = 4
+ ev.set_script ("teleport", (1, 13, 4, STAND_WEST))
+ lm.add_event (ev)
+
+ # From common room to kitchen
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 1
+ ev.x = 1
+ ev.y = 8
+ ev.set_script ("teleport", (3, 1, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From kitchen to common room
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 3
+ ev.x = 1
+ ev.y = 1
+ ev.set_script ("teleport", (1, 1, 7, STAND_NORTH))
+ lm.add_event (ev)
+
+ # From kitchen to yard
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 3
+ ev.x = 7
+ ev.y = 3
+ ev.set_script ("teleport", (0, 12, 14, STAND_EAST))
+ lm.add_event (ev)
+
+ # From yard to kitchen
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 0
+ ev.x = 11
+ ev.y = 14
+ ev.set_script ("teleport", (3, 6, 3, STAND_WEST))
+ lm.add_event (ev)
+
+ # From cellar to bathroom
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 3
+ ev.y = 5
+ ev.set_script ("teleport", (5, 4, 6, STAND_NORTH))
+ lm.add_event (ev)
+
+ # From bathroom to cellar
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 5
+ ev.x = 4
+ ev.y = 7
+ ev.set_script ("teleport", (4, 3, 6, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From cellar to alek's
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 0
+ ev.y = 6
+ ev.set_script ("teleport", (6, 5, 6, STAND_WEST))
+ lm.add_event (ev)
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 0
+ ev.y = 7
+ ev.set_script ("teleport", (6, 5, 7, STAND_WEST))
+ lm.add_event (ev)
+
+ # From alek's to cellar
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 6
+ ev.x = 6
+ ev.y = 6
+ ev.set_script ("teleport", (4, 1, 6, STAND_EAST))
+ lm.add_event (ev)
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 6
+ ev.x = 6
+ ev.y = 7
+ ev.set_script ("teleport", (4, 1, 7, STAND_EAST))
+ lm.add_event (ev)
+
+ # From cellar to storage
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 0
+ ev.y = 9
+ ev.set_script ("teleport", (8, 6, 3, STAND_WEST))
+ lm.add_event (ev)
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 0
+ ev.y = 10
+ ev.set_script ("teleport", (8, 6, 4, STAND_WEST))
+ lm.add_event (ev)
+
+ # From storage to cellar
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 8
+ ev.x = 7
+ ev.y = 3
+ ev.set_script ("teleport", (4, 1, 9, STAND_EAST))
+ lm.add_event (ev)
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 8
+ ev.x = 7
+ ev.y = 4
+ ev.set_script ("teleport", (4, 1, 10, STAND_EAST))
+ lm.add_event (ev)
+
+ # From cellar to dwarves'
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 10
+ ev.y = 6
+ ev.set_script ("cellar_to_bjarn", (7, 1, 6, STAND_EAST))
+ lm.add_event (ev)
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 10
+ ev.y = 7
+ ev.set_script ("cellar_to_bjarn", (7, 1, 7, STAND_EAST))
+ lm.add_event (ev)
+
+ # From dwarves' to cellar
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 7
+ ev.x = 0
+ ev.y = 6
+ ev.set_script ("teleport", (4, 9, 6, STAND_WEST))
+ lm.add_event (ev)
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 7
+ ev.x = 0
+ ev.y = 7
+ ev.set_script ("teleport", (4, 9, 7, STAND_WEST))
+ lm.add_event (ev)
+
+ # From 1st to Fellnir's
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 9
+ ev.x = 9
+ ev.y = 2
+ ev.set_script ("teleport", (10, 1, 3, STAND_EAST))
+ lm.add_event (ev)
+
+ # From Fellnir's to 1st
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 10
+ ev.x = 0
+ ev.y = 3
+ ev.set_script ("teleport", (9, 8, 2, STAND_WEST))
+ lm.add_event (ev)
+
+ # From 1st to Frostbloom's
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 9
+ ev.x = 0
+ ev.y = 2
+ ev.set_script ("teleport", (11, 4, 3, STAND_WEST))
+ lm.add_event (ev)
+
+ # From Frostbloom's to 1st
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 11
+ ev.x = 5
+ ev.y = 3
+ ev.set_script ("teleport", (9, 1, 2, STAND_EAST))
+ lm.add_event (ev)
+
+ # From 1st to Player's
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 9
+ ev.x = 7
+ ev.y = 4
+ ev.set_script ("teleport", (12, 5, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From Player's to 1st
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 12
+ ev.x = 5
+ ev.y = 1
+ ev.set_script ("teleport", (9, 7, 3, STAND_NORTH))
+ lm.add_event (ev)
+
+ # From 1st to Silverhair's
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 9
+ ev.x = 1
+ ev.y = 7
+ ev.set_script ("fst_to_silverhair", (13, 5, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From Silverhair's to 1st
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 13
+ ev.x = 5
+ ev.y = 1
+ ev.set_script ("teleport", (9, 1, 6, STAND_NORTH))
+ lm.add_event (ev)
+
+ # From 2nd to Redwyne's
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 14
+ ev.x = 3
+ ev.y = 5
+ ev.set_script ("teleport", (15, 1, 5, STAND_EAST))
+ lm.add_event (ev)
+
+ # From Redwyne's to 2nd
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 15
+ ev.x = 0
+ ev.y = 5
+ ev.set_script ("teleport", (14, 2, 5, STAND_WEST))
+ lm.add_event (ev)
+
+ # From 2nd to Oliver's
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 14
+ ev.x = 0
+ ev.y = 5
+ ev.set_script ("teleport", (16, 6, 5, STAND_WEST))
+ lm.add_event (ev)
+
+ # From Oliver's to 2nd
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 16
+ ev.x = 7
+ ev.y = 5
+ ev.set_script ("teleport", (14, 1, 5, STAND_EAST))
+ lm.add_event (ev)
+
+ # From 2nd to Illig's
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 14
+ ev.x = 1
+ ev.y = 8
+ ev.set_script ("teleport", (17, 6, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From Illig's to 2nd
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 17
+ ev.x = 6
+ ev.y = 1
+ ev.set_script ("teleport", (14, 1, 7, STAND_NORTH))
+ lm.add_event (ev)
+
+ # From common room to 1st
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 1
+ ev.x = 12
+ ev.y = 1
+ ev.set_script ("teleport", (9, 8, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From 1st to common room
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 9
+ ev.x = 8
+ ev.y = 1
+ ev.set_script ("teleport", (1, 12, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From 1st to 2nd
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 9
+ ev.x = 6
+ ev.y = 1
+ ev.set_script ("teleport", (14, 4, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From 2nd to 1st
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 14
+ ev.x = 4
+ ev.y = 1
+ ev.set_script ("teleport", (9, 6, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From common room to cellar
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 1
+ ev.x = 9
+ ev.y = 1
+ ev.set_script ("teleport", (4, 6, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From cellar to common room
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 6
+ ev.y = 1
+ ev.set_script ("teleport", (1, 9, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From cellar to barn
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 12
+ ev.y = 1
+ ev.set_script ("teleport", (0, 24, 11, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From barn to cellar
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 0
+ ev.x = 24
+ ev.y = 10
+ ev.set_script ("teleport", (4, 12, 2, STAND_SOUTH))
+ lm.add_event (ev)
+
+ # From cellar to kitchen
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 4
+ ev.x = 3
+ ev.y = 13
+ ev.set_script ("teleport", (3, 6, 5, STAND_NORTH))
+ lm.add_event (ev)
+
+ # From kitchen to cellar
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 3
+ ev.x = 6
+ ev.y = 6
+ ev.set_script ("teleport", (4, 3, 12, STAND_NORTH))
+ lm.add_event (ev)
+
+ # From yard to guards'
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 0
+ ev.x = 12
+ ev.y = 23
+ ev.set_script ("teleport", (18, 7, 3, STAND_WEST))
+ lm.add_event (ev)
+
+ # From guards' to yard
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 18
+ ev.x = 8
+ ev.y = 3
+ ev.set_script ("teleport", (0, 13, 23, STAND_EAST))
+ lm.add_event (ev)
+
+ # From guards ground to guards 1st
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 18
+ ev.x = 1
+ ev.y = 8
+ ev.set_script ("teleport", (19, 2, 8, STAND_EAST))
+ lm.add_event (ev)
+
+ # From guards 1st to guards ground
+ ev = enter_event ()
+ ev.thisown = C
+ ev.submap = 19
+ ev.x = 1
+ ev.y = 8
+ ev.set_script ("teleport", (18, 2, 8, STAND_EAST))
+ lm.add_event (ev)
+
+
+ # Action events
+ ev = action_event ()
+ ev.thisown = C
+ ev.submap = 1
+ ev.x = 10
+ ev.y = 2
+ ev.dir = STAND_NORTH
+ ev.set_script ("character_speak", (the_player.get_name (), \
+ "That clock seems to be late!"))
+ lm.add_event (ev)
+
+ ev = action_event ()
+ ev.thisown = C
+ ev.submap = 10
+ ev.x = 3
+ ev.y = 6
+ ev.dir = STAND_NORTH
+ ev.set_script ("character_speak", (the_player.get_name (), \
+ "I'd better not touch this... What
if it explodes??"))
+ lm.add_event (ev)
+
+ ev = action_event ()
+ ev.thisown = C
+ ev.submap = 10
+ ev.x = 4
+ ev.y = 6
+ ev.dir = STAND_NORTH
+ ev.set_script ("character_speak", (the_player.get_name (), \
+ "I'd better not touch this... What
if it explodes??"))
+ lm.add_event (ev)
+
+ ev = action_event ()
+ ev.thisown = C
+ ev.submap = 10
+ ev.x = 2
+ ev.y = 5
+ ev.dir = STAND_EAST
+ ev.set_script ("character_speak", (the_player.get_name (), \
+ "I'd better not touch this... What
if it explodes??"))
+ lm.add_event (ev)
+
+ ev = action_event ()
+ ev.thisown = C
+ ev.submap = 10
+ ev.x = 5
+ ev.y = 5
+ ev.dir = STAND_WEST
+ ev.set_script ("character_speak", (the_player.get_name (), \
+ "I'd better not touch this... What
if it explodes??"))
+ lm.add_event (ev)
+
+ ev = action_event ()
+ ev.thisown = C
+ ev.submap = 10
+ ev.x = 3
+ ev.y = 4
+ ev.dir = STAND_SOUTH
+ ev.set_script ("character_speak", (the_player.get_name (), \
+ "I'd better not touch this... What
if it explodes??"))
+ lm.add_event (ev)
+
+ ev = action_event ()
+ ev.thisown = C
+ ev.submap = 10
+ ev.x = 4
+ ev.y = 4
+ ev.dir = STAND_SOUTH
+ ev.set_script ("character_speak", (the_player.get_name (), \
+ "I'd better not touch this... What
if it explodes??"))
+ lm.add_event (ev)
+
+ # Now setup the characters
+ lucia = gamedata_get_character ("Lucia Redwyne")
+ lucia.set_dialogue ("dialogues/lucia_start")
+ lucia.load ("lucia.mchar")
+ lucia.set_map (gamedata_map_engine ().get_landmap ())
+ lucia.jump_to (3, 4, 2)
+ lucia.set_action ("talk")
+ lucia.stand_south ()
+ lucia.set_portrait ("lucia.pnm")
+
+ orloth = gamedata_get_character ("Orloth Redwyne")
+ orloth.set_dialogue ("dialogues/orloth_start")
+ orloth.load ("orloth.mchar")
+ orloth.set_map (gamedata_map_engine ().get_landmap ())
+ orloth.jump_to (1, 2, 2)
+ orloth.set_action ("talk")
+ orloth.stand_south ()
+ orloth.set_schedule ("orloth")
+ orloth.set_portrait ("orloth.pnm")
+
+ erek = gamedata_get_character ("Erek Stonebreaker")
+ erek.set_dialogue ("dialogues/erek_start")
+ erek.load ("erek.mchar")
+ erek.set_map (gamedata_map_engine ().get_landmap ())
+ erek.jump_to (1, 5, 5)
+ erek.set_action ("talk")
+ erek.stand_north ()
+ # changed Erek's text color to violet
+ erek.set_color (3)
+ erek.set_schedule ("erek")
+ erek.set_portrait ("erek.pnm")
+
+ talan = gamedata_get_character ("Talan Wendth")
+ talan.set_dialogue ("dialogues/talan_start")
+ talan.load ("talan.mchar")
+ talan.set_map (gamedata_map_engine ().get_landmap ())
+ talan.jump_to (0, 11, 19)
+ talan.set_action ("talk")
+ talan.stand_north ()
+ talan.set_schedule ("talan")
+ talan.set_portrait ("talan.pnm")
+
+ jelom = gamedata_get_character ("Jelom Rasgar")
+ jelom.set_dialogue ("dialogues/jelom_start")
+ jelom.load ("jelom.mchar")
+ jelom.set_map (gamedata_map_engine ().get_landmap ())
+ jelom.jump_to (9, 2, 6)
+ jelom.set_action ("talk")
+ jelom.stand_north ()
+ jelom.set_schedule ("jelom")
+ jelom.set_portrait ("jelom.pnm")
+
+ alek = gamedata_get_character ("Alek Endhelm")
+ alek.set_dialogue ("dialogues/alek_start")
+ alek.load ("alek.mchar")
+ alek.set_map (gamedata_map_engine ().get_landmap ())
+ alek.jump_to (1, 1, 3)
+ alek.set_action ("talk")
+ alek.stand_south ()
+ alek.set_schedule ("alek")
+ alek.set_portrait ("alek.pnm")
+
+ oliver = gamedata_get_character ("Oliver Redwyne")
+ oliver.set_dialogue ("dialogues/oliver_start")
+ oliver.load ("oliver.mchar")
+ oliver.set_map (gamedata_map_engine ().get_landmap ())
+ oliver.jump_to (0, 25, 15)
+ oliver.set_action ("talk")
+ oliver.stand_west ()
+ oliver.set_schedule ("oliver")
+ oliver.set_portrait ("oliver.pnm")
+
+ frostbloom = gamedata_get_character ("Rhayne Frostbloom")
+ frostbloom.set_dialogue ("dialogues/frostbloom_start")
+ frostbloom.load ("frostbloom.mchar")
+ frostbloom.set_map (gamedata_map_engine ().get_landmap ())
+ frostbloom.jump_to (0, 18, 22)
+ frostbloom.set_action ("talk")
+ frostbloom.stand_north ()
+ frostbloom.set_schedule ("frostbloom")
+ frostbloom.set_portrait ("frostbloom.pnm")
+
+ bjarn = gamedata_get_character ("Bjarn Fingolson")
+ bjarn.set_dialogue ("dialogues/bjarn_start")
+ bjarn.load ("bjarn.mchar")
+ bjarn.set_map (gamedata_map_engine ().get_landmap ())
+ bjarn.jump_to (7, 3, 6)
+ bjarn.set_action ("talk")
+ bjarn.stand_west ()
+ bjarn.set_portrait ("bjarn.pnm")
+
+ silverhair = gamedata_get_character ("Imoen Silverhair")
+ silverhair.load ("silverhair.mchar")
+ silverhair.set_map (gamedata_map_engine ().get_landmap ())
+ silverhair.jump_to (13, 4, 4)
+ silverhair.set_action ("talk")
+ silverhair.stand_south ()
+ silverhair.set_schedule ("silverhair")
+ silverhair.set_portrait ("silverhair.pnm")
+
+ sarin = gamedata_get_character ("Sarin Trailfollower")
+ sarin.set_dialogue ("dialogues/sarin_start")
+ sarin.load ("servant2.mchar")
+ sarin.set_map (gamedata_map_engine ().get_landmap ())
+ sarin.jump_to (13, 5, 3)
+ sarin.set_action ("talk")
+ sarin.stand_west ()
+ sarin.set_schedule ("sarin")
+ sarin.set_portrait ("sarin.pnm")
+
+ janesta = gamedata_get_character ("Janesta Skywind")
+ janesta.set_dialogue ("dialogues/janesta_start")
+ janesta.load ("servant1.mchar")
+ janesta.set_map (gamedata_map_engine ().get_landmap ())
+ janesta.jump_to (13, 6, 3)
+ janesta.set_action ("talk")
+ janesta.stand_north ()
+ janesta.set_schedule ("janesta")
+ janesta.set_portrait ("janesta.pnm")
+
+ fellnir = gamedata_get_character ("Fellnir Kezular")
+ fellnir.set_dialogue ("dialogues/fellnir_start")
+ fellnir.load ("fellnir.mchar")
+ fellnir.set_map (gamedata_map_engine ().get_landmap ())
+ fellnir.jump_to (10, 4, 4)
+ fellnir.set_action ("talk")
+ fellnir.stand_south ()
+ fellnir.set_schedule ("fellnir")
+ fellnir.set_portrait ("fellnir.pnm")
+
+ tristan = gamedata_get_character ("Tristan Illig")
+ tristan.set_dialogue ("dialogues/tristan_start")
+ tristan.load ("illig.mchar")
+ tristan.set_map (gamedata_map_engine ().get_landmap ())
+ tristan.jump_to (1, 4, 6)
+ tristan.set_action ("talk")
+ tristan.stand_west ()
+ tristan.set_schedule ("tristan")
+ tristan.set_portrait ("illig.pnm")
+
+ # Once we want to generate the data context files,
+ # just call gamedata::save (1) and copy the .data files
+ # to the game's root directory.
+
+ audio_play_background (1)
+ gametime_update ()
+ fade_in ()
+
# -- Main --
title = title_screen ()
diff --git a/scripts/modules/character_screen.py
b/scripts/modules/character_screen.py
new file mode 100644
index 0000000..7a67465
--- /dev/null
+++ b/scripts/modules/character_screen.py
@@ -0,0 +1,91 @@
+#
+# $Id$
+#
+# (C) Copyright 2001 Kai Sterker <address@hidden>
+# Part of the Adonthell Project http://adonthell.linuxgames.com
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License.
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY.
+#
+# See the COPYING file for more details
+#
+
+import adonthell
+
+# -- GUI for chosing the name of the main character
+class character_screen (adonthell.win_container):
+
+ # -- Constructor
+ def __init__(self):
+ adonthell.win_container.__init__(self)
+
+ self.thisown = 0
+ self.quit = 1
+
+ self.py_signal_connect (self.on_destroy, adonthell.win_event_DESTROY)
+
+ # -- get font and theme
+ self.font = adonthell.win_manager_get_font ("original")
+ self.theme = adonthell.win_manager_get_theme ("original")
+
+ self.move (60, 55)
+ self.resize (200, 110)
+ self.set_border (self.theme)
+ self.set_background (self.theme)
+ self.set_trans_background (1)
+
+ # -- The window title
+ self.title = adonthell.win_label ()
+ self.title.thisown = 0
+ self.title.resize (0, 20)
+ self.title.set_font (self.font)
+ self.title.set_form (adonthell.label_AUTO_SIZE)
+ self.title.set_text ("Enter your character's name")
+ self.title.pack ()
+ self.title.move ((self.length () - self.title.length ())/2, 10)
+
+ # -- The character image
+ self.image = adonthell.win_image ()
+ self.image.thisown = 0
+ self.image.move (10, 35)
+ self.image.resize (64, 64)
+ self.image.load_pnm ("gfx/portraits/player.pnm")
+ self.image.set_mask (1)
+ self.image.pack ()
+
+ # -- The text entry
+ self.entry = adonthell.win_write ()
+ self.entry.thisown = 0
+ self.entry.py_signal_connect (self.on_enter,
adonthell.win_event_ACTIVATE_KEY)
+ self.entry.move (90, 62)
+ self.entry.resize (100, 20)
+ self.entry.set_font (self.font)
+ self.entry.set_cursor (1)
+ self.entry.set_cursor_moveable (1)
+ self.entry.set_text ("Banec")
+ self.entry.pack ()
+
+ self.add (self.title)
+ self.add (self.image)
+ self.add (self.entry)
+ self.set_focus_object (self.entry)
+
+ self.set_visible_background (1);
+ self.set_visible_border (1);
+ self.set_visible_all (1);
+ self.set_activate (1)
+
+ self.entry.set_focus (1)
+ self.entry.set_activate (1)
+
+ # -- callback for accepting name
+ def on_enter (self):
+ name = self.entry.text_char ()
+ adonthell.gamedata_player ().rename (name)
+ self.quit = 0
+
+ # -- callback to close the window
+ def on_destroy (self):
+ return self.quit
diff --git a/scripts/modules/console.py b/scripts/modules/console.py
index d1d7dc1..fe944ad 100755
--- a/scripts/modules/console.py
+++ b/scripts/modules/console.py
@@ -1,12 +1,26 @@
+#
+# $Id$
+#
+# (C) Copyright 2001 Kai Sterker <address@hidden>
+# Part of the Adonthell Project http://adonthell.linuxgames.com
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License.
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY.
+#
+# See the COPYING file for more details
+#
+
import sys
-from adonthell import *
+import adonthell
# -- A simple python console with command history
-class console (win_container):
+class console (adonthell.win_container):
# -- Constructor
def __init__(self, ns):
- win_container.__init__(self)
+ adonthell.win_container.__init__(self)
self.namespace = ns
self.history = []
@@ -17,12 +31,12 @@ class console (win_container):
# read the old history
self.read_history ()
- self.py_signal_connect (self.on_destroy, win_event_DESTROY)
- self.py_signal_connect (self.on_update, win_event_UPDATE)
+ self.py_signal_connect (self.on_destroy, adonthell.win_event_DESTROY)
+ self.py_signal_connect (self.on_update, adonthell.win_event_UPDATE)
# -- get font and theme
- self.font = win_manager_get_font ("silverleaf")
- self.theme = win_manager_get_theme ("silverleaf")
+ self.font = adonthell.win_manager_get_font ("silverleaf")
+ self.theme = adonthell.win_manager_get_theme ("silverleaf")
self.move (10, 150)
self.resize (300, 80)
@@ -30,10 +44,10 @@ class console (win_container):
self.set_background (self.theme)
self.set_trans_background (1)
- self.entry = win_write ()
+ self.entry = adonthell.win_write ()
self.entry.thisown = 0
- self.entry.py_signal_connect (self.on_execute, win_event_ACTIVATE_KEY)
+ self.entry.py_signal_connect (self.on_execute,
adonthell.win_event_ACTIVATE_KEY)
self.entry.move (5, 5)
self.entry.resize (290, 70)
# -- causes a crash:
@@ -62,8 +76,7 @@ class console (win_container):
# -- callback for command execution
def on_execute (self):
text = self.entry.text_char ()
- # print "Execute", text
-
+
# -- if we have a command ...
if text != None:
@@ -88,32 +101,28 @@ class console (win_container):
# -- catch relevant keypresses
def on_update (self):
# -- quit
- if input_has_been_pushed (SDLK_TAB):
- # print "Quitting ..."
+ if adonthell.input_has_been_pushed (adonthell.SDLK_TAB):
self.quit = 0
# -- clear screen
- elif input_has_been_pushed (SDLK_DELETE):
- # print "Deleting ..."
+ elif adonthell.input_has_been_pushed (adonthell.SDLK_DELETE):
self.entry.set_text ("")
# -- previous command
- elif input_has_been_pushed (SDLK_UP):
- # print "Up ..."
+ elif adonthell.input_has_been_pushed (adonthell.SDLK_UP):
if self.hist_idx > 0:
self.hist_idx = self.hist_idx - 1
self.entry.set_text (self.history[ self.hist_idx ][:-1])
# -- next command
- elif input_has_been_pushed (SDLK_DOWN):
- # print "Down ..."
+ elif adonthell.input_has_been_pushed (adonthell.SDLK_DOWN):
if self.hist_idx < len (self.history) - 1:
self.hist_idx = self.hist_idx + 1
self.entry.set_text (self.history[ self.hist_idx ][:-1])
# -- Read the old history from ~/.adonthell/history
def read_history (self):
- dir = gamedata_user_data_dir ()
+ dir = adonthell.gamedata_user_data_dir ()
dir = dir + "/history"
# -- try to open the file
@@ -129,7 +138,7 @@ class console (win_container):
# -- Write the last 50 commands to ~/.adonthell/history
def write_history (self):
- dir = gamedata_user_data_dir ()
+ dir = adonthell.gamedata_user_data_dir ()
dir = dir + "/history"
# -- try to open the file
- [adonthell-wastesedge-commits] Release_0-3-1 11da725 225/237: FIXED slight bug in Talan's dialogue, (continued)
- [adonthell-wastesedge-commits] Release_0-3-1 11da725 225/237: FIXED slight bug in Talan's dialogue, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 219b786 155/237: UPDATED font colors a little, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 23c7a5b 120/237: FIXED wording, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 acd90d5 104/237: ADDED Tristan and Fellnir, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 3bc0ac3 230/237: FIXED a little bug in Sarin's dialogue, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 c544301 203/237: Some fixes to some dialogues, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 f47e582 148/237: FIXED start of new game, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 b4a0e9c 073/237: Others furnitures added, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 cdc0455 199/237: ADDED Ryan O'Neil to credits, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 12bc098 195/237: ADDED credits to the extro, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 b770dc8 111/237: ADDED 'name your character' dialog that pops up when starting a new game,
Kai Sterker <=
- [adonthell-wastesedge-commits] Release_0-3-1 5f31f05 215/237: Small fixes, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 c49550c 161/237: IMPROVED Erek slightly, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 f470b9c 198/237: CHANGED credits, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 06c1205 149/237: FIXED Python console, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 07b6477 176/237: ADDED more gameplay, hooray!, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 20e2b04 188/237: CHANGED stables to pantry, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 c8fca18 186/237: FIXED extro, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 fa60e79 139/237: Building now creates byte-compiled script files, Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 c2af165 106/237: Added the final mapcharacters., Kai Sterker, 2016/07/25
- [adonthell-wastesedge-commits] Release_0-3-1 bfb1042 180/237: IMPROVED chest-owners, Kai Sterker, 2016/07/25