Qhimm.com Forums

Miscellaneous Forums => Scripting and Reverse Engineering => Topic started by: Akari on 2006-07-12 04:38:41

Title: About dialog windows on field.
Post by: Akari on 2006-07-12 04:38:41
I try to implement field windows opcodes. It's hard but I will surely do it ^_^ So I have some questions.

1) Which opcode use for creating transparent window, self closing window and text without border?

2) Which of windows opcodes syncronous and which are not?

3) Is it nesesary to create window instance for all of them? (with WINDOW opcode)

4) What will happened if one entity call WINDOW and next entity will try to create message with this window id? What scope window id has?

And someone may try to explain windowing system, because I don't clear understand how it works =)
Title: Re: About dialog windows on field.
Post by: halkun on 2006-07-12 12:51:43
The answer to #4 is the window will shrink closed and re-zoom open with the new data.

I think the "place" command is for the windowless message.
Title: Re: About dialog windows on field.
Post by: Akari on 2006-07-13 18:30:25
this seems used to set opacity to windows

Code: [Select]
    WMODE(00 02 00)
    WINDOW(00 1C 00 08 00 FA 00 49 00)
    MESSAGE(00 20)
    WMODE(00 00 00)

Do somebody knows something about WMODE?
Title: Re: About dialog windows on field.
Post by: dziugo on 2006-07-13 23:15:22
WMode(ID, Style, CBC)

ID - ID of the target window
Style - 02 for transparent window, 01 for the window without border
CBC - Cannot Be Closed if 01

dziugo
Title: Re: About dialog windows on field.
Post by: Akari on 2006-07-14 02:40:55
The WMode called before Window was initialize. Does this mean that there are fixed number of window that can be opened and there are some static array of window structure are allocated for them?
Title: Re: About dialog windows on field.
Post by: dziugo on 2006-07-14 06:46:39
Yes, 8 structs if I counted it properly.
Title: Re: About dialog windows on field.
Post by: Akari on 2006-09-19 15:57:48
I'm on my way to implement all window opcodes.

Now I have questions about WNUMB (0x37) and STTIM (0x38)

WNUMB - Where are offsets for databank?

STTIM - If it has not window_id - then changing it affects all windows?

STTIM - It has hours minutes and seconds. In the game I see only minutes and seconds... how is it set?

STTIM - After setting does it updates automaticly? or you need to reset it from script?

How can I open multiple windows at once?
Title: Re: About dialog windows on field.
Post by: Synergy Blades on 2006-09-19 17:01:24
I've answered a couple here: will edit as I play about to find the answer to the others, so check back.

WNUMB: Sorry, forgot to add them. Wiki entry updated, but basically you split the four-byte value into 2 two-byte values, and they are used to find the address for the two banks.

STTIM (1): Yes, as far as I can tell. I opened up three windows in succession with a clock in it, each showed the same clock, with the time value from the previous one still ticking away in it. So the first one had 60 minutes, left it for ten seconds, then pressed [OK] when the clock read 59:50, and the second window had 59:50 in it which continued to tick down.

STTIM (2): Yes, it only has minutes and seconds, but if you do (for example) 1hr, 0mins, 0secs, the clock will read 60:00. So hours just translates into 60 minutes.

STTIM (3): The clock begins ticking down automatically as soon as you use a MESSAGE to open the window with the clock in it.