TR_m1_Pub_Waters_Shadow
TR_Mainland.esm
Variables
9
Local Variables
TR_Map
control
rent
rentDay
rentMonth
setup
cleanup
T_Local_NPC
NoLore
Source
1begin TR_m1_Pub_Waters_Shadow
2
3;Cell: Llothanis, Water's Shadow Tavern
4;Publican: TR_m1_Rantharas
5;Flag: TR_m1_Rent_Waters_Shadow
6;Room Door: TR_m1_rd_Waters_Shadow
7
8;all rooms get rented for one day
9;This NPC must be in the map where the room is if you use the locked door cell loading cleanup
10;rename the script for the NPC and make a specific door to unlock or flag to set
11;NO actual key is given to player, a global flag is set that removes the ownership on the beds.
12
13;this script fires off when RENT is set true. Rent is set true through the BEDS topic in dialogue, which all Publicans have.
14;Each publican will also have a separate response to buying the bed, so they can give simple directions. There is also a default one.
15
16short TR_Map
17short control
18short rent ;if room is rented, set through dialogue on this NPC
19short rentDay ;the day of the rental
20short rentMonth ;the month of the rental
21short setup ;if setup has been done
22short cleanup ;true if you want to cleanup all the flags, rental is over and can be reset
23short T_Local_NPC
24short NoLore
25;this script also uses a global variable (TR_m1_Rent_Waters_Shadow). Make a new one for each rental. You can have as many
26;beds as you want use that variable, it is used through the ownership data on the object reference
27
28if ( rent == 1 )
29
30 if ( setup == 0 )
31 set rentDay to Day
32 set rentMonth to Month
33 set setup to 1
34 set TR_m1_Rent_Waters_Shadow to 1 ;this is the flag for the ownership on the bed
35 TR_m1_rd_Waters_Shadow->unlock ;opens the door
36 TR_m1_rd_Waters_Shadow->PlaySound3D "Open Lock"
37
38 else ;setup is done so check to see if the day is over
39
40 if ( Day != rentDay )
41 set cleanup to 1
42
43 elseif ( Month != rentMonth )
44 set cleanup to 1
45
46 endif
47
48 endif
49
50 if ( CellChanged ) ;this is only needed if you've done a locked door. If so, you only want to do this on cell change so you don't lock them in the room
51 if ( cleanup == 1 ) ;this gets called when the rental is over and everything can be cleaned up
52 set rent to 0
53 set TR_m1_Rent_Waters_Shadow to 0
54 TR_m1_rd_Waters_Shadow->lock 40 ;locks the door
55 TR_m1_rd_Waters_Shadow->PlaySound3D "LockedDoor"
56 set setup to 0
57 set rentDay to 0
58 set rentMonth to 0
59 set cleanup to 0
60 endif
61 endif
62
63endif
64
65; This short script is there to allow dialogue to be filtered on the TR_Map local variable,
66; allowing for regional topics such as "Morrowind Lore" or "Geographic Regions" to be
67; appropriate to the location the NPC is.
68
69if ( TR_Map == 1 )
70 return
71endif
72
73set TR_Map to 1
74
75End