DMH-Online

Dungeon Masters Helper · Est. 2005

Npcs Scripts

NWN Script: drunk.htm

Author Sticky: Post Working Scripts Here
K'Sarul Posted: Saturday, 29 June 12:29AM
The new and improved Drunken Fool Script!!!
This is the Male version and a female version is on the way.

Place this on a dwarf in their OnHeartbeat and laugh yourself silly.

NWScript:
///////////
//Drunken fool
/////////// //////////////////////////////////////////
//This script rolls 1d10 and causes a random walking NPC to be have as a drunk.
//Not that I know anything about that :)  
///////////
//Script by Christopher Bernert
//Date Created: 6/27/02
//////////////////////////////////////////////////////
//object oPC = GetLastPerceived(); This can go in to recognize PCs in the future
int iRollTen = d10(1);
void main()
{
//object oAle;
//oAle = (NW_IT_THNMISC002);
DelayCommand(20.0, ActionRandomWalk());
if(d100(1) > 41)            //60% chance of performing a drunken act
    {
      {
        switch(iRollTen)    //Generated Number
            {
            case 1:
            ClearAllActions();
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(PlaySound("as_pl_tavtoastm2"));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_LISTEN));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            case 2:
            ClearAllActions();
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            case 3:
            ClearAllActions();
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(PlaySound("as_pl_tavdrunkm2"));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_VICTORY2));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            case 4:
            ClearAllActions();
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_TAUNT));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(PlaySound("as_pl_tavdrunkm1"));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            case 5:
            ClearAllActions();
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS));
            ActionDoCommand(PlaySound("as_pl_hiccupm2"));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            case 6:
            ClearAllActions();
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(PlaySound("as_pl_tavdrunkm3"));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            case 7:
            ClearAllActions();
            ActionDoCommand(PlaySound("as_pl_tavtoastm3"));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_TALK_LAUGHING));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            case 8:
            ClearAllActions();
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(PlaySound("as_pl_tavdrunkm4"));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            case 9:
            ClearAllActions();
            ActionDoCommand(PlaySound("as_pl_hiccupm2"));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_FIREFORGET_DRINK));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            case 10:
            ClearAllActions();
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS));
            effect eVis = EffectVisualEffect(VFX_IMP_SLEEP);
            ApplyEffectToObject( DURATION_TYPE_PERMANENT, eVis, OBJECT_SELF);
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS));
            ApplyEffectToObject( DURATION_TYPE_PERMANENT, eVis, OBJECT_SELF);
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_SIT_CROSS));
            ActionDoCommand(ActionPlayAnimation(ANIMATION_LOOPING_PAUSE_DRUNK));
            break;
            }
         }
      }
   }
⌂ All Scripts ← PreviousNext → 👁 Category List

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