I've attached some pictures to better illustrate what I mean.

This is the regular talking.

And this is what I want for choices!


I don't think that answer the question though. She want to put the menu items in the say box. What that code does is make the menu look like a say box. While that might seems good enough, it lacks the functionality of the say statement. The code for handling a menu where you want a (non-narrator) character speaking at the same time as the menu is being shown is deep inside the engine, and what it does is that it call a separate say statement and a separate menu statement, and so the menu and the say window don't work together. You will either end up with the character on the wrong window, the menu overlapping over the text, or a lot of extra code every single time you need a menu. All these problems can be avoided with some...uhh...gymnastics...Alex wrote:http://lemmasoft.renai.us/forums/viewto ... 41#p250130 - should help.
Code: Select all
init -100 python:
class MenuInformation(renpy.store.object):
def __init__(self):
super(renpy.store.object,self).__init__()
global menu
self.activated=False
self.items=[]
self.say_aru=False
self.original_iu=renpy.exports.say
self.original_senkoo=menu
renpy.exports.say=self.iu
menu=self.senkoo
def iu(self,who,what,interact=True):
self.activated=False
self.say_aru=not interact
self.items=[]
return self.original_iu(who,what,interact)
def senkoo(self,items):
self.activated=True
ret=self.original_senkoo(items)
self.activated=False
self.say_aru=False
return ret
Code: Select all
label start:
$menu_info=MenuInformation()
Code: Select all
screen choice_main:
default canonical_menu=menu_info
for caption, action, chosen in canonical_menu.items:
if action:
button:
action action
style "menu_choice_button"
text caption style "menu_choice"
else:
text caption style "menu_caption"
Code: Select all
text what id "what"Code: Select all
if what:
text what id "what"
use choice_main
if not what:
text "" id "what"
Code: Select all
default canonical_menu=menu_infoCode: Select all
screen choice:
default canonical_menu=menu_info
python:
canonical_menu.items=items
if not canonical_menu.say_aru:
window:
id "window"
vbox:
style "say_vbox"
use choice_main
Code: Select all
menu:
#add choice here
Code: Select all
menu:
vincent "" #have vincent speak an empty line here
#add choice here
Code: Select all
menu:
"Have you decided?"
#add choice here
Code: Select all
menu:
vincent "Have you decided?"
#add choice here
Well, we are going to see it because you have resurrected it
Users browsing this forum: Google [Bot], _ticlock_