DMH-Online

Dungeon Masters Helper · Est. 2005

Placeables Scripts

NWN Script: useable_sundial_005.htm

Author Sticky: Post Working Scripts Here
Arckon Posted: Thursday, 04 July 10:26PM
Configurable Sundial time script

This is merely a derivitive of prior work. It allows the DM to use this script for their sundials in their world and adjust its time for how long their game hours are. It also allows the DM to set the intervals of the hour to be returned, every quarter hour, every twelfth, etc.

Code:
  
//:://///////////////////////////////
/*
    When placed on a sun dial's ONUSED event, this
    script will provide the actual game time to a
    resolution defined by the DM with the game hour
    as defined by the DM. 
*/
//::////////////////////////////////
//:: Created By: Brett Lathrope
//:: Created On: July 3, 2002
//:: Modified By: RG Cheek 7-4-02  - *NOTE: user defines MIN_GHR & NUM_INT*
//::///////////////////////////////
void main()
{
  int MIN_GHR = 2;    // The modules time rate of minutes per game hour
  int NUM_INT = 12;   // Minint = number of intervals of time per hour - marks per hour
  int nGHour = GetTimeHour();
  int nRMinute = GetTimeMinute();
  int nRSeconds = GetTimeSecond();
  int lMinint  = ( MIN_GHR * 60 / NUM_INT);
                  // lMinint = number of seconds per interval per hour
  int nFM;                          //False Minute we'll build.
  string sFM;                       // String storage of our false minute.
  if (GetIsNight()){
    SpeakString( "Sun dials don't work at night.", TALKVOLUME_TALK);
    return;
  }
  nFM = ( ( (60 * nRMinute) + nRSeconds ) / lMinint ) * ( 60 / NUM_INT );
  sFM = IntToString( nFM );
  if (GetStringLength( sFM ) == 1) sFM = "0" + sFM;
  string sDesignate = " AM";
  if ( nGHour > 12 ){
    nGHour = nGHour - 12;
    sDesignate = " PM";
  }
  string sTmp = IntToString( nGHour ) + ":" + sFM + sDesignate;
  SpeakString("It is about " + sTmp, TALKVOLUME_TALK);
}



_________________
Acolyte of the Ancient Mystic Order of Old Fogeys

http://andalusiarpg.org

⌂ All Scripts ← PreviousNext → 👁 Category List

All Placeables Scripts

📄 cast_haste 📄 check_fire 📄 chest_puzzle 📄 close_door 📄 close_door_002 📄 close_door_003 📄 close_door_004 📄 create_item_with_delay 📄 darklamp 📄 darklamp_002 📄 day_night_lights 📄 day_night_lights_002 📄 destroy_spawned_items 📄 destroy_spawned_items_002 📄 door_guard 📄 door_lock_item 📄 dragging_placeables 📄 encounter_on_open 📄 encounter_on_open_002 📄 fair_loot 📄 fire_burns 📄 guarded_chest 📄 kill_attacker 📄 kill_nearby 📄 lights_on_off 📄 linked_doors 📄 moveable_placeables 📄 multi_door 📄 open_doors 📄 poly_attacker 📄 polymorph_pc 📄 polymorph_pc_002 📄 random_teleport 📄 refil_chest 📄 refil_chest_002 📄 refil_chest_003 📄 refil_chest_004 📄 refil_chest_005 📄 refil_chest_006 📄 refil_chest_007 📄 remove_with_item 📄 respawner 📄 smart_doors 📄 spit_treasure 📄 talkable_placeables 📄 talking_door 📄 talking_sign 📄 talking_sign_002 📄 talking_sign_003 📄 talking_sign_004 📄 teleporting_chairs 📄 useable_bedroll 📄 useable_birdcage 📄 useable_cannon 📄 useable_catapult 📄 useable_chair 📄 useable_chair_002 📄 useable_chair_003 📄 useable_chair_004 📄 useable_couch 📄 useable_divining_pool 📄 useable_gong 📄 useable_kegs 📄 useable_kegs_002 📄 useable_placeables_002 📄 useable_sign 📄 useable_sign_002 📄 useable_sundial 📄 useable_sundial_002 📄 useable_sundial_003 📄 useable_sundial_004 📄 useable_sundial_005 📄 useable_sundial_006 📄 useable_training_dummy 📄 useable_training_dummy_002 📄 useable_training_dummy_003 📄 useable_training_dummy_004 📄 useable_trapdoor 📄 useable_trapdoor_002 📄 useable_trapdoor_003 📄 useable_trapdoor_004 📄 weapon_spawn_per_class 📄 worth