Style Editing?

blob
12 Aug 2008, 23:17
Working on a new game, but I've hit a snag.

I'm using Standard style, but there's only one thing that's bugging me. The thing that tells you where the exits are is in second person - "You can go x" - but my game is in first person, so I want to have it say "I can go x". I can't find a way to edit styles, though. Is it possible?

blob
12 Aug 2008, 23:28
Whoops, this should have been in Creating Games, can someone move it?

Thanatos
13 Aug 2008, 04:33
I think the answer is in Tools > _____ Messages.

blob
13 Aug 2008, 12:36
If you mean Standard Messages, I don't see anything there that could help.

Thanatos
14 Aug 2008, 06:04
Oh, you mean - You can go West etc? No, you can't change this. Ask Alex in the Future Requests to add in an option.

lyteside
14 Aug 2008, 19:50
it can be done, but unfortunately, you have to code it. here's my script of how i implement descriptions of rooms and directions. a huge modifcation to ModTypeLib's script.


!addto game
description {
do <TLProomDescription>
}
!end




'==================================
'== Alternative room description ==
'==================================

define procedure <TLProomDescription>
if not ( #tempRoomClear# = #quest.currentroom# ) then {
foreground <&H666666>
msg <|n¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯>
foreground <white>
}
set string <tempRoomClear; #quest.currentroom#>
set <TLSindescription;$gettag(#quest.currentroom#;indescription)$>
set <TLSalias;$gettag(#quest.currentroom#;alias)$>
if is <#TLSindescription#;> then {
if is <#TLSalias#;> then {
foreground <&H779999>
msg <You are |xn>
if ($right(#quest.currentroom#; 4)$ = road) or ($right(#quest.currentroom#; 4)$ = path) or ($right(#quest.currentroom#; 4)$ = roof) or ($right(#quest.currentroom#; 6)$ = street) or ($right(#quest.currentroom#; 6)$ = bridge) or ($right(#quest.currentroom#; 8)$ = rooftops) or ($left(#quest.currentroom#; 6)$ = corner) or ($right(#quest.currentroom#; 3)$ = Ave) or ($right(#quest.currentroom#; 7)$ = surface) then msg <on |xn>
else msg <in |xn>
if property <#quest.currentroom#; prefix> then {
msg <$gettag(#quest.currentroom#;prefix)$ |xn>
msg <#quest.currentroom#.|xn>
foreground <white>
}
else {
foreground <&H779999>
msg <#quest.currentroom#.|xn>
foreground <white>
}
}
else {
foreground <&H779999>
msg <You are |xn>
if ($right(#quest.currentroom#; 4)$ = road) or ($left(#quest.currentroom#; 6)$ = corner) or ($right(#quest.currentroom#; 4)$ = path) or ($right(#quest.currentroom#; 3)$ = Ave) or ($right(#quest.currentroom#; 4)$ = path) or ($right(#quest.currentroom#; 4)$ = roof) or ($right(#quest.currentroom#; 6)$ = street) or ($right(#quest.currentroom#; 6)$ = bridge) or ($right(#quest.currentroom#; 8)$ = rooftops) then msg <on |xn>
else msg <in |xn>
if property <#quest.currentroom#; prefix> then {
msg <$gettag(#quest.currentroom#;prefix)$ |xn>
foreground <&H779988>
msg <#TLSalias#.|xn>
foreground <white>
}
else {
foreground <&H779988>
msg <#TLSalias#.|xn>
foreground <white>
}
}
}
else {
if is <#TLSalias#;> then {
msg <#TLSindescription# $gettag(#quest.currentroom#;prefix)$ |b|cy#quest.currentroom#.|cb|xb|xn>
}
else {
msg <#TLSindescription# $gettag(#quest.currentroom#;prefix)$ |b|cy#TLSalias#.|cb|xb|xn>
}
}
if (#(quest.currentroom):dark# > 0 ) and not flag <illuminate> then {

if (#(quest.currentroom):dark# = 2 ) then {
msg <|nIt is dark.>
if not is <#quest.doorways.dirs#;> then {
msg <|nYou can move |xn>
foreground <&HC7884D>
msg <#quest.doorways.dirs#.>
foreground <white>

}
if not is <#quest.doorways.places#;> then {
msg <You can go to |xn>
foreground <&HC7884D>
msg <#quest.doorways.places#.>
foreground <white>
}
if not is <#quest.doorways.out#;> then {
msg <You can go out to lxn>
foreground <&HC7884D>
msg <|b#quest.doorways.out.display#|xb.>
foreground <white>
}
}
else {

msg <|nIt is quite difficult to see here, because the area is very dark. |xn>
set <TLSobjList;>
set <TLScharList;>
for each object in <#quest.currentroom#> {
set <TLSthisObj;#quest.thing#>
if property <#quest.thing#; invisible> or property <#quest.thing#; hidden> then {
}
else {
if type <#quest.thing#;TLTactor> or type <#quest.thing#;TLTanimal> then {
if property <#quest.thing#;named> then {
if not property <#quest.thing#; suffix> or ($lengthof(#(quest.thing):suffix#)$ = 0) then {
if not property <#quest.thing#; prefix> or ($lengthof(#(quest.thing):prefix#)$ = 0) then set <TLScharList;#TLScharList# |i$capfirst(#@quest.thing#)$|xi, >
else set <TLScharList;#TLScharList# #(quest.thing):prefix# |i#@quest.thing#|xi, >
}
else {
if not property <#quest.thing#; prefix> or ($lengthof(#(quest.thing):prefix#)$ = 0) then set <TLScharList;#TLScharList# |i$capfirst(#@quest.thing#)$|xi #(quest.thing):suffix#, >
else set <TLScharList;#TLScharList# #(quest.thing):prefix# |i#@quest.thing#|xi #(quest.thing):suffix#, >
}
}
else set <TLScharList;#TLScharList# #(quest.thing):prefix#>
}
else{
set <TLSobjList;#TLSobjList# #(quest.thing):prefix#>
set <TLSobjList;#TLSobjList# #@quest.thing#, >
}
}
}
if ($lengthof(#TLSobjList#)$ >0) then {
set <TLNlengthOf;$lengthof(#TLSobjList#)$ - 1>
set <TLSobjList;$left(#TLSobjList#;%TLNlengthOf%)$>
set <TLSobjList;$TLFcontentFormat(#TLSobjList#)$>
if ($instr(#TLSobjList#;_and_)$ >0) then {
msg <However, you can still make out |xn>
foreground <&H779988>
msg <#TLSobjList# |xn>
foreground <white>
msg <here.|xn>
}
else {
msg <However, you can still make out |xn>
foreground <&H779988>
msg <#TLSobjList# |xn>
foreground <white>
msg <here.|xn>
}
}
msg <>
if ($lengthof(#TLScharList#)$ >0) then {
set <TLNlengthOf;$lengthof(#TLScharList#)$ - 1>
set <TLScharList;$left(#TLScharList#;%TLNlengthOf%)$>
set <TLScharList;$TLFcontentFormat(#TLScharList#)$>
if ($instr(#TLScharList#;_and_)$ >0) then {
msg <|n#TLScharList# |xn>
foreground <white>
msg <are apparently here.>
}
else {
msg <|n#TLScharList# |xn>
foreground <white>
msg <is apparently here.>
}
}

if not is <#quest.doorways.dirs#;> then {
msg <|nYou can move |xn>
foreground <&HC7884D>
msg <#quest.doorways.dirs#.>
foreground <white>
flag on <directional>

}
if not is <#quest.doorways.places#;> then {
if not flag <directional> then msg <|n>
msg <You can go to |xn>
foreground <&HC7884D>
msg <#quest.doorways.places#.>
foreground <white>
}
if not is <#quest.doorways.out#;> then {
if not flag <directional> then msg <|n>
msg <You can go out to |xn>
foreground <&HC7884D>
msg <|b#quest.doorways.out.display#|xb.>
foreground <white>
}

}
}
else {
if (#(quest.currentroom):store# > 0 ) then msg <|n#quest.lookdesc#|n>
else {
msg <|n#quest.lookdesc# |xn>
msg <|xn>
}
set <TLSobjList;>
set <TLScharList;>
for each object in <#quest.currentroom#> {
set <TLSthisObj;#quest.thing#>
if property <#quest.thing#; invisible> or property <#quest.thing#; hidden> then {
}
else {
if type <#quest.thing#;TLTactor> or type <#quest.thing#;TLTanimal> then {
if property <#quest.thing#;named> then {
if not property <#quest.thing#; suffix> or ($lengthof(#(quest.thing):suffix#)$ = 0) then {
if not property <#quest.thing#; prefix> or ($lengthof(#(quest.thing):prefix#)$ = 0) then set <TLScharList;#TLScharList# |i#@quest.thing#|xi, >
else set <TLScharList;#TLScharList# #(quest.thing):prefix# |i#@quest.thing#|xi, >
}
else {
if not property <#quest.thing#; prefix> or ($lengthof(#(quest.thing):prefix#)$ = 0) then set <TLScharList;#TLScharList# |i#@quest.thing#|xi #(quest.thing):suffix#, >
else set <TLScharList;#TLScharList# #(quest.thing):prefix# |i#@quest.thing#|xi #(quest.thing):suffix#, >
}
}
else set <TLScharList;#TLScharList# #(quest.thing):prefix#>
}
else{
set <TLSobjList;#TLSobjList# #(quest.thing):prefix#>
set <TLSobjList;#TLSobjList# #@quest.thing#, >
}
}
}
if ($lengthof(#TLSobjList#)$ >0) then {
flag on <ObjectsInRoom>
set <TLNlengthOf;$lengthof(#TLSobjList#)$ - 1>
set <TLSobjList;$left(#TLSobjList#;%TLNlengthOf%)$>
set <TLSobjList;$TLFcontentFormat(#TLSobjList#)$>
if ($instr(#TLSobjList#;_and_)$ >0) then {
msg <You can see |xn>
foreground <&H779988>
msg <#TLSobjList# |xn>
foreground <white>
msg <here.|xn>
}
else {
msg <You can see |xn>
foreground <&H779988>
msg <#TLSobjList# |xn>
foreground <white>
msg <here.|xn>
}
}
if (#(quest.currentroom):store# > 0 ) and not flag <ObjectsInRoom> then {
}
else msg <>
if ($lengthof(#TLScharList#)$ >0) then {
set <TLNlengthOf;$lengthof(#TLScharList#)$ - 1>
set <TLScharList;$left(#TLScharList#;%TLNlengthOf%)$>
set <TLScharList;$TLFcontentFormat(#TLScharList#)$>
if ($instr(#TLScharList#;_and_)$ >0) then {
if not (#(quest.currentroom):store# > 0 ) or flag <ObjectsInRoom> then msg <>
if not (#(quest.currentroom):store# > 0 ) and not flag <ObjectsInRoom> then msg <|n|n>
msg <$capfirst(#TLScharList#)$ |xn>
foreground <white>
msg <are here.|xn>
}
else {
if not (#(quest.currentroom):store# > 0 ) or flag <ObjectsInRoom> then msg <>
else msg <|n>
msg <$capfirst(#TLScharList#)$ |xn>
foreground <white>
msg <is here.|xn>
}
}
if not ($lengthof(#TLScharList#)$ >0) and (#(quest.currentroom):store# > 0 ) then msg <>
' else msg <|n>
if not is <#quest.doorways.dirs#;> then {
msg <|nYou can move |xn>
foreground <&HC7884D>
msg <#quest.doorways.dirs#.>
foreground <white>
flag on <directional>

}
if not is <#quest.doorways.places#;> then {
if not flag <directional> then msg <|n>
msg <You can go to |xn>
foreground <&HC7884D>
msg <#quest.doorways.places#.>
foreground <white>
}
if not is <#quest.doorways.out#;> then {
if not flag <directional> then msg <|n>

msg <You can go out to |xn>
foreground <&HC7884D>
msg <|b#quest.doorways.out.display#|xb.>
foreground <white>
}
}
flag off <ObjectsInRoom>
flag off <directional>
end define

steve the gaming guy
15 Aug 2008, 18:19
Very nice, lyte.

Thanatos, do you have any games out there in the archive? Just curious.

Thanatos
16 Aug 2008, 03:18
Yeah, Backstreetboy Demo and Assassinating Dr. Froth.