new question

Can anyone fill me in on why this wouldnt compile. ( first a little background) there is a scene called day 1 morning and a scene called day 2 morning.

code -

at 7:52 am:
if day 2 morning is happening:
say “Time to head to school, You walk out your front door turn west onto Main street and make the long walk down toward school.[line break]You finally arrive at the school grounds where you see people milling about and talking.”;
change the time of day to 7:59 am;
now the player is in school grounds. - this does not work

at 7:52 am:
if day 1 morning is happening:
say “Time to head to school, You walk out your front door turn west onto Main street and make the long walk down toward school.[line break]You finally arrive at the school grounds where you see people milling about and talking.”;
change the time of day to 7:59 am;
now the player is in school grounds. - this does.

I put the scenes tracking on and the scene “day 2 morning” is playing. why would it not do what I said for the day 2 scene but do it on the day 1?

When you say “this does not work/this does,” do you mean the entire rule seems to fail in one case, or just that some component line doesn’t work?

Without seeing more of your code, my initial guess at a general cause for the problem as you’ve framed it in your OP is that you haven’t actually specified conditions for starting the scene called “day 1 morning” or that you’ve specified conditions for starting that scene which aren’t actually met in the desired context.

For example:

There is a scene called Day 1 Morning.  Day 1 Morning begins when play begins.

day 1 morning does begin when play begins… day 2 morning begins after the player is asleep during day 1 late night.

what I wanted to happen was at a certain time during day 2 morning, I was going to move a person to a room. This would be a trigger to end day 2 morning and start the following scene.

so at 7:52 am on day 2 morning…nothing happens …the say phrase is never triggered. Here is the actual code for the scenes as far as how they start/ end:

day 1 morning is a scene. day 1 morning begins when play begins.Day 1 morning ends when Day 1 before class begins.

day 2 morning is a scene.
Day 2 morning begins when the player is asleep for the first time.
Day 2 morning ends when day 2 before school begins.

day 2 before school is a scene.
day 2 before school begins when blinky is in out of world for the first time.

at 7:52 am:
if day 2 morning is happening:
say “Time to head to school, You walk out your front door turn west onto Main street and make the long walk down toward school.[line break]You finally arrive at the school grounds where you see people milling about and talking.”;
change the time of day to 7:59 am;
now blinky is in out of world;
now the player is in school grounds.

If i change the above code to say if day 1 morning is happening it works…but not day 2

This is pretty interesting, sqib; there’s more to this problem than meets the eye. First to solve your immediate troubles, though. Instead of using those timer rules, write your checks for events at a certain time of day this way:

Every turn when the time of day is 7:52 am: if day 1 morning is happening: say "Time to head to school, You walk out your front door turn west onto Main street and make the long walk down toward school.[line break]You finally arrive at the school grounds where you see people milling about and talking."; change the time of day to 7:59 am; now the player is in school grounds; otherwise: if day-2-morning is happening: say "Time to head to school, You walk out your front door turn west onto Main street and make the long walk down toward school.[line break]You finally arrive at the school grounds where you see people milling about and talking."; change the time of day to 7:59 am; now the player is in school grounds.
There seems to be an underlying issue with these “At [time]” timers. They only fire once (I never knew this myself until experimenting just now). It’s hard for me to say whether that’s a bug or not. The I7 documentation (Chapter 9.11) doesn’t mention this limitation, which would thus seem to imply to the average reader that there is no such limitation; but that’s not really an indicator either way. At the very least, if the timers are intended to work only once then perhaps a clarifying line should be added to Chapter 9.11 of the I7 documentation.

If you eliminate/comment out the 7:52 event for Day 1 in your code, then the Day 2 event occurs as expected. Or consider this example (based on your own posted code), which might be clearer because it has events that don’t all use the same time of day:

[code]There is a room called Front Porch.

There is a room called School Grounds.

There is a scene called Day 1 Morning. Day 1 Morning begins when play begins.

There is a scene called Day 1 Events. Day 1 Events begins when the player is in the School Grounds for the first time. Day 1 Events ends when the player is asleep for the first time.

Day 1 Morning ends when Day 1 Events begins.

There is a scene called Day-2-Morning. Day-2-Morning begins when Day 1 Events ends. Day-2-Morning ends when the player is in the School Grounds for the second time.

There is a scene called Day 2 Events. Day 2 Events begins when Day-2-Morning ends. Day 2 Events ends when the player is asleep for the second time.

When play begins:
now the time of day is 7:50 am;
now the right hand status line is “[time of day]”.

When Day 1 Events ends:
now the time of day is 7:50 am;
now the player is in Front Porch.

Every turn when the time of day is 7:52 am:
if day 1 morning is happening:
say “Time to head to school, You walk out your front door turn west onto Main street and make the long walk down toward school.[line break]You finally arrive at the school grounds where you see people milling about and talking.”;
change the time of day to 7:59 am;
now the player is in school grounds;
otherwise:
if day-2-morning is happening:
say “Time to head to school, You walk out your front door turn west onto Main street and make the long walk down toward school.[line break]You finally arrive at the school grounds where you see people milling about and talking.”;
change the time of day to 7:59 am;
now the player is in school grounds.

At 8:02 am:
say “The bell rings. Time to go to class.”

At 8:04 am:
say “'If you don’t hurry inside, you’ll get a tardy slip.”

A person can be asleep or awake. A person is usually awake.

Instead of sleeping:
now the player is asleep;
say “You doze off into dreamland.”

The player wears a watch. The description of the watch is “According to your watch, it’s [time of day].”

Test timestudy with “z / z / z / z / z / z / z / z / sleep / z / z / z / z / z / z / z”[/code]
The sample game output shows that the 8:02 and 8:04 events happen on the first day, but don’t happen on the second day.

The bottom line is you’ll want to either a) use every turn rules with a time of day check, as I mentioned above, or b) make a recurring scene called “Trip to School” (or something like that) to repetitively move the player to school each day at 7:52. There are certainly other ways to accomplish what you’d like as well, but one of the two methods I mentioned should be enough to get you started.

Endosphere, thank you for your time in trying to help me out. I will give this a whirl a little later and try it out. Again thank you, much appreciated.

indeed the switch to “every turn” did the trick. I would have been banging my head up against the wall awhile if you didnt figure out that the way I had it only fires once. Again thank you.

got 1 more for ya, didnt want to start a new thread for it.

heres the code in question:

every turn when the time of day is 11:01 am:
if day 2 lunch is happening:
say “”;
rex arrives happens in 1 turns from now;
the outcome happens in 2 turns from now.

at the time when rex arrives happens:
if the player does not enclose brass knuckles:
say “some text”;
display Figure of rex punching me;
now the player is in football field;
otherwise:
if the player encloses brass knuckles:
say “some other text.”;
display figure of rex punched;
display figure of rex knocked out;
now the player is in principals office.
/ code

the problem is I only want the player sent to the principals office when he has the brass knuckles, if not I would like him to stay where he is “football field” the way it is now he goes to the principals office both ways

The indentation is important here – can you copy your source in, complete with the indents, within a “code” tag? I suspect that what’s happening is that you haven’t indented “now the player is in principal’s office” enough; everything under “otherwise” should be one indentation level deeper than the “otherwise,” I think.

at the time when rex arrives happens:
	if the player does not enclose brass knuckles:
		say "some text.";
		display Figure of rex punching me;
		now the player is in football field;
	otherwise:
		if the player encloses brass knuckles:
			say "some more text.";
			display figure of rex punched;
			display figure of rex knocked out;
			now the player is in principals office.

hmm I think the problem was actually in “the outcome happens in 2 turns from now.”
tweaked a lil bit of code there and it seems to work now.

Being new to inform and lazy, I have a way around the “2 turns from now” stuff.

Basically I have "

A person has a number called patience. John is a person. The patience of john is 10.

Scene 1 begins when the player can see John and the patience of John is 10. Scene 1 ends when the patience of john is 0.

Every turn during scene 1:
decrease the patience of john by 1;
[do other stuff]
if the patience of john is 3: say “John is getting impatient!”;