Hello everyone,
Here is what I'm trying to accomplish:
Players talk to a horse that starts a conversation where they can click (*Mount the horse and continue on*) - done
make it impossible to mount the horse- need help
possibly make it so the horse does not turn to look at them- not sure if possible, maybe make game think its a placable?
when they click *mount the horse and continue on* make the screen slow fade and then teleport them to a new area after a 5 sec delay- can't get teleport to work with fade out but can get teleport to work on its own.
make players enter the new area they teleported to from the horse conversation already mounted on a new horse which then forces you to dismount after walking over a trigger, gives you a message saying it refuses to go on and then dies and they have to continue on walking- need help
Apologies for the weird format of my questions it's the only non-wall-of-text way I could think of to convey my problem haha.
Here is my script for the fade out delayed teleport that only fades the screen out and then gets stuck in black screen and doesn't teleport. Thank you in advance for anyone willing to help out!
location lTarget;
object oTarget;
/* Script generated by
Lilac Soul's NWN Script Generator, v. 2.3
For download info, please visit:
//Put this on action taken in the conversation editor
void main()
{
object oPC = GetPCSpeaker();
if ((GetLevelByClass(CLASS_TYPE_BARBARIAN, oPC)>0)||
(GetLevelByClass(CLASS_TYPE_BARD, oPC)>0)||
(GetLevelByClass(CLASS_TYPE_FIGHTER, oPC)>0)||
(GetLevelByClass(CLASS_TYPE_RANGER, oPC)>0)||
(GetLevelByClass(CLASS_TYPE_ROGUE, oPC)>0)||
(GetLevelByClass(CLASS_TYPE_ASSASSIN, oPC)>0)||
(GetLevelByClass(CLASS_TYPE_WEAPON_MASTER, oPC)>0))
{
FadeToBlack(oPC, FADE_SPEED_SLOW);
oTarget = GetWaypointByTag("ENTERHORSE");
lTarget = GetLocation(oTarget);
//only do the jump if the location is valid.
//though not flawless, we just check if it is in a valid area.
//the script will stop if the location isn't valid - meaning that
//nothing put after the teleport will fire either.
//the current location won't be stored, either
if (GetAreaFromLocation(lTarget)==OBJECT_INVALID) return;
DelayCommand(5.0, AssignCommand(oPC, ClearAllActions()));
DelayCommand(5.0, AssignCommand(oPC, ActionJumpToLocation(lTarget)));
}
else
{
FloatingTextStringOnCreature("*The old horse refuses to let you mount*", oPC);
}
}