I implemented a tram with three stops, but sometimes I get an error when I move the player to the location outside. I have apparently solved two of them and I don´t even know how.
The Spanish extension gives this message "“Tienes que salirte de NAMEOFTHELOCATION primero” which is something like “First you have to get out of X”. I don´t know about the original one. The strange thing is that the player is already in the location. I´ve used “move the player to X” and both locations are spatially distant of each other. Maybe another NPC colliding with the instructions? But I think I have that field under control now. Any suggestions?
I searched the Standard Rules (English) for a blocking message like that. It comes from the “can’t travel in what’s not a vehicle rule”:
Check an actor going (this is the can't travel in what's not a vehicle rule):
let nonvehicle be the holder of the actor;
if nonvehicle is the room gone from, continue the action;
if nonvehicle is the vehicle gone by, continue the action;
if the actor is the player:
if nonvehicle is a supporter:
say "[We] [would have] to get off [the nonvehicle] first." (A);
say "[We] [would have] to get out of [the nonvehicle] first." (B);
stop the action.
Check the logic of this rule and see if it helps.
Without seeing more of your code, I can’t say exacty what’s wrong, but it’s something like you’re trying to move the player, who is inside/on something that is not a vehicle (an Inform-defined vehicle), to another location?
That´s it. I didn´t give the location a vehicle status, and that´s the reason the parser is giving me this error. Although it´s odd I solved the issue two times without defining the tram as a vehicle I suppose it is better do things properly.
This was very helpful. Thank you very much!