Npcs Scripts
NWN Script: prostitute.htm
| Author: | maddman75 |
| Author Website: | n/a |
| Script Name: | NPC Prostitute |
| Description: | Causes a prostitute to act the part. |
| Instructions on Use: | Give the prostitute a dialogue tree. She propositions the player if male
and has one of two possible actions. The first is to give a 'special
favor', which is a pretty severe abuse of the Worship animation.
When you reach that point in the conversation, set the actions taken to
this script.
Script 1 below currently costs the PC 15 gold pieces and makes the prostitute worship him. Script 2 is an alternate choice that will cause the prostitute to follow the PC around, script 3 ensures that the Prostitute does not follow the PC out of the area the encounter began in. Scripts 1 and 2 are called from the "ActionTaken" part of a conversation, script 3 goes into the OnHearbeat of the prostitute. You will also need a waypoint with the tag 'pro_start' at the point that you want her to return to after the PC leaves the area. |
Script 1(ActionTaken):
//::///////////////////////////////////////////////
//:: FileName pro15gp
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
//:: Created By: maddman75
//:: Created On: 7/6/2002 11:59:31 PM
//:://////////////////////////////////////////////
void main()
{
// Remove some gold from the player
TakeGoldFromCreature(15, GetPCSpeaker(), TRUE);
// perform the favor
PlaySound("al_na_sludglake1");
PlayAnimation(ANIMATION_LOOPING_WORSHIP, 1.0, 8.0);
}
|
Script 2(ActionTaken):
//::///////////////////////////////////////////////
//:: FileName kela5gp
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
//:: Created By: maddman75
//:: Created On: 7/6/2002 11:59:31 PM
//:://////////////////////////////////////////////
void main()
{
object trick;
trick = GetPCSpeaker();
// Remove some gold from the player
TakeGoldFromCreature(5, GetPCSpeaker(), FALSE);
ActionForceFollowObject(GetPCSpeaker(), 1.0);
}
|
Script 3(OnHearbeat):
// Additions to default heartbeat script
object trick;
object inn;
inn = GetObjectByTag("tag of area");
if(trick != OBJECT_INVALID )
{
ActionForceFollowObject (trick, 1.0);
}
if(trick == OBJECT_INVALID)
{
ActionForceMoveToLocation(GetLocation(GetWaypointByTag("pro_start")));
}
if (inn != GetArea(OBJECT_SELF))
{
ClearAllActions();
ActionForceMoveToLocation(GetLocation(GetWaypointByTag("pro_start")));
trick = OBJECT_INVALID;
}
|
All Npcs Scripts
📄 ambient_animations
📄 barmaid
📄 barmaid002
📄 barmaid003
📄 barmaid003a
📄 barmaid004
📄 bitch_slap
📄 blacksmith
📄 blacksmith_001
📄 blacksmith_002
📄 blacksmith_003
📄 bounty_hunter
📄 check
📄 check_pc_item
📄 check_pc_item_002
📄 cheer_pcs
📄 cook
📄 daily_activity
📄 day_merchant
📄 determine_armed
📄 drunk
📄 equip_dequip
📄 equip_dequip_002
📄 escort
📄 flee
📄 flee_001
📄 force_pc_sit
📄 gate_guard
📄 get_nearest
📄 guard_dog_002
📄 guard_patrol
📄 healer
📄 impersonation
📄 item_guardian
📄 item_guardian_002
📄 jail_cell
📄 janitor
📄 janitor_002
📄 living_statues
📄 misc_activity
📄 monolouge
📄 multi_converse
📄 night_watch
📄 npc_brawls
📄 npc_pick_pocket
📄 npc_speak_onperception
📄 npc_start_conv
📄 npc_start_conv_002
📄 npc_start_conv_003
📄 npc_start_conv_004
📄 npc_start_conv_005
📄 open_door
📄 polymorph
📄 prostitute
📄 protect_items
📄 protect_items_002
📄 random_speak
📄 random_speak_002
📄 random_speak_003
📄 random_speak_004
📄 random_speak_005
📄 random_walk2
📄 reinforcements
📄 reinforcements_002
📄 remember_conv
📄 rowdy
📄 sheath_weapons
📄 sit_and_talk
📄 sit_and_talk_002
📄 sit_in_nearest_chair
📄 smart_npc
📄 smart_sitting
📄 streetfight
📄 tag
📄 tag_001a
📄 teleport_away
📄 teleport_away_002
📄 teleport_away_003
📄 town_crier
📄 trivia_bot
📄 walk_after
📄 woodcutter
📄 worker
📄 worker_002
📄 workstation
📄 wrestling_game