Just wondering how i would go about making sierra style convo's?
if you talk to a character for the first time it plays one topic... once the conversation commences and you talk to the character for a second time... a different topic is played... third... forth etc. all this without 'chosing what to say' if that makes any sense
Look at DisplaySpeech() function then.
Also you have to use a variable to store the state of a dialog:
in the global scriptint MAN_dialog_state = 0;
on talk interaction with character MAN:
if (MAN_dialog_state == 0) {
DisplaySpeech(MAN, "hi");
DisplaySpeech(MAN, "how are you");
}
else if (MAN_dialog_state == 1) {
DisplaySpeech(MAN, "blah blah");
}
else if (MAN_dialog_state == 2) {
DisplaySpeech(MAN, "blah blah....");
}
else if (MAN_dialog_state == 3) {
DisplaySpeech(MAN, "blah blah........");
}
else {
DisplaySpeech(MAN, "leave me alone");
}
MAN_dialog_state++; //increase varible when dialog is finished
I want an object to move up and down, iv'e scripted this in my room code
it should be:
function room_a() {
// script for room: Repeatedly execute
if (GetObjectAt(94,146)==8
){
MoveObjectDirect(8,94,130,1);
}else if (GetObjectAt(94,130)==8
){
MoveObjectDirect(8,94,146,1);
}
} //< ---- end of room_a() function
Also I would suggest you to check if the object moving before applying the Move command inside repeatedly execute, so the thing that you may want (btw, instead of GetObjectAt() you can use GetObjectY() ):
function room_a() {
// script for room: Repeatedly execute
if (IsObjectMoving(8)==0) { //if it's not moving
if (GetObjectY(8)==146) MoveObjectDirect(8,94,130,1);
else if (GetObjectY(8)==130) MoveObjectDirect(8,94,146,1);
}
} //< ---- end of room_a() (room_repeatedly_execute) function
-Cheers