Difference between revisions of "House for Sale Tutorial"
Jump to navigation
Jump to search
no edit summary
imported>BugUsNot |
imported>Sk8r2000 |
||
Line 1: | Line 1: | ||
'''House for Sale Tutorial'''<br> | |||
<br> | <br> | ||
=== | ===Preparations=== | ||
Before we can start you need to do this:<br> | Before we can start you need to do this:<br> | ||
*Make the Exterior of the house. | *Make the Exterior of the house. | ||
Line 9: | Line 9: | ||
*Make a House Key | *Make a House Key | ||
*Make a Quest | *Make a Quest | ||
See [[Creating a House]] for more information on how to make it. | |||
===Preparing the house=== | ===Preparing the house=== | ||
First | First of all you need to set the lock on your house door to "Needs a Key". Change the key to the one that you made earlier (preparations section).<br> | ||
You house is going to be split up into sections (e.g. Kitchen, Living Room, Dining Room).<br> | |||
In each | In each section you need to set a parent. Highlight an item in your section.<br> Double-click on it and check the ''Persistent Reference'' box. Give the item a Reference ID, e.g. ''BedroomParentRef''.<br> Double-click on the another thing in the same section. Go to ''Enable Parent'' then press ''Select Reference in Render Window''.<br> | ||
Double | You can now see your render window. Double click on the Parent that you made earlier. Repeat this on the other sets so that each set is linked to their own parent.<br><br> | ||
Now | Now your house is ready. | ||
<br><br> | <br><br> | ||
===The Npc=== | ===The Npc=== | ||
The Npc needs some | The Npc needs some dialogue.<br> | ||
Go to | Go to Quest and go to ''Topics''.<br> | ||
Right-click in the empty list and press ''add topic''.<br> | Right-click in the empty list and press ''add topic''.<br> | ||
Then you add ''HouseDecline'' and ''HouseInquiry''.<br> | Then you add ''HouseDecline'' and ''HouseInquiry''.<br> | ||
Go back to the ''addtopic''list, right-click and press ''new topic''.<br> | Go back to the ''addtopic''list, right-click and press ''new topic''.<br> | ||
Make one topic called ''Housebuy | Make one topic called ''Housebuy<TOWNNAMEHERE>'' and one called ''HouseTooMuch<TOWNNAMEHERE>''.<br><br> | ||
Before you | Before you continue you need to choose a price for the house.<br><br> | ||
Now select ''HouseBuy''. In the ''topic text'' you | Now select ''HouseBuy''. In the ''topic text'' you write something like this: "''I'll gladly pay 3,000 gold for it''" (If your house costs 3000, of course).<br> Then go to the list beneath the ''topic text''. Right-click and select ''new''. <br>In the Response text you write something like this: "''Good choice, here is your key.''" <br>If you have audio files, add them now. <br>Press ''Ok''.<br> | ||
In the ''Result Script'' write: | In the ''Result Script'' write: | ||
SetStage '' | SetStage ''<QUESTNAME>'' 10 | ||
In the ''Conditions'' list you right-click and press new.<br> | In the ''Conditions'' list you right-click and press new.<br> | ||
Set the ''Condition Function'' to GetGold, leave the ''Function Parameters'' empty, set | Set the ''Condition Function'' to GetGold, leave the ''Function Parameters'' empty, set Comparison to ''>='' and the value to the price of your house, then check ''Run on target''.<br> Then add a new Condition, Function: GetisId, Parameters: <Your NPC's name>, Comparison: ==, Value: 1 and leave ''Run on Target'' unchecked. <br>Select ''HouseDecline'' add a new response.<br> Add a text like this: "''Come back if you change your mind.''".<br> | ||
Then add the audio.<br> Add | Then add the audio.<br> Add another ''GetisID'' condition just like you did the second time on the previous Topic.<br> | ||
Select ''HouseInquiry''. Add a new response with a text like this: "''I've been looking for | Select ''HouseInquiry''. Add a new response with a text like this: "''I've been looking for this special house.''".<br> Add audio.<br> | ||
In the conditions you add the same condition as the last topic. <br>Then you add a new condition: Function: IsCellOwner, Parameters: | In the conditions you add the same ''GetisID'' condition as the last topic. <br>Then you add a new condition: Function: IsCellOwner, Parameters:<The cell of your house> Player, Comparison: == and Value: 0. <br>Then add a third condition: Function: GetDisposition, Comparison: >= and Value: (How much the Npc needs to like you before they offer you the house). <br>In the ''Choices'' List, add ''HouseBuy'', ''HouseDecline'' and ''HouseTooMuch''.<br> | ||
Select ''HouseTooMuch'', | Select ''HouseTooMuch'', write ''I can't afford 3,000 gold.'' in the ''Topic Text''.<br> Add a new response with text like this: "''What a shame. I guess I have to look for another buyer.''".<br> Add audio. <br>Add a condition, the usual GetIsID condition.<br><br> | ||
Now the | Now the dialouge is finished. | ||
===The furnishing=== | ===The furnishing=== | ||
First create a scroll for each set of furniture and name them like: ''House BedRoom'' or ''House | First create a scroll for each set of furniture and name them something like: ''House BedRoom'' or ''House DiningRoom''.<br>In the scroll you write what this set of furniture will add to your house. Something like this: ''<br>This entitles the bearer to:<br> | ||
<br> | <br> | ||
1 Bed<br> | 1 Bed<br> | ||
1 Carpet<br> | 1 Carpet<br> | ||
1 Bookshelf with | 1 Bookshelf with books<br> | ||
1 Drawers | 1 Set of Drawers<br> | ||
1 Stool | 1 Stool | ||
'' Add this script | '' Add this script to the scroll: | ||
Scriptname | Scriptname HouseFurnReceipt1Script | ||
short Doonce | short Doonce | ||
Line 59: | Line 60: | ||
end | end | ||
Then add a value to | Then add a value to the scroll.<br> | ||
You can make the next part | You can make the next part a few different ways, i will show one of them.<br> | ||
First choose the seller of the | First choose the seller of the sets, you can use the seller of the house or someone else. <br>Select the Merchant cointainer to this Npc. Then add this to it's Script (you need to edit it): | ||
short once | short once | ||
begin gamemode | begin gamemode | ||
if getstage ( | if getstage (YOUR QUEST NAME) >= 10 | ||
if once == 0 | if once == 0 | ||
additem ( | additem (FIRST SET ID) 1 | ||
additem ( | additem (SECOND SET ID) 1 | ||
; Do this on all of the sets | ; Do this on all of the sets | ||
set once to 1 | set once to 1 | ||
Line 78: | Line 79: | ||
===The Quest=== | ===The Quest=== | ||
Make a Quest Script and add it to your Quest.<br> | Make a Quest Script and add it to your Quest.<br> | ||
This is the script you will need: | This is the script you will need (again, you need to edit): | ||
scn | scn aaa(initials)buyinghouse | ||
short TotalCount ;counts how many furniture | short TotalCount ;counts how many furniture sets you have bought | ||
short Doonce1 ; | short Doonce1 ;checks if you have bought the first set | ||
short Doonce2 ; | short Doonce2 ;checks if you have bought the second set | ||
;add "Short Doonce3" if you have 3 | ;add "Short Doonce3" if you have 3 sets, and so on | ||
float fQuestDelayTime | float fQuestDelayTime | ||
Line 97: | Line 98: | ||
endif | endif | ||
if getstage ( | if getstage (YOUR QUEST NAME) == 10 && player.getincell (YOUR HOUSE CELL) == 1 | ||
setstage ( | setstage (YOUR QUEST NAME) 20 | ||
endif | endif | ||
Line 106: | Line 107: | ||
;These are the variable triggers that are set when a voucher is acquired | ;These are the variable triggers that are set when a voucher is acquired | ||
if ( Player.GetItemCount ( | if ( Player.GetItemCount (FIRST FURNITURE SET ID) == 1 ) && ( Doonce1 == 0 ) | ||
( | (FIRST PARENT).Enable | ||
set TotalCount to ( TotalCount + 1 ) | set TotalCount to ( TotalCount + 1 ) | ||
set Doonce1 to 1 | set Doonce1 to 1 | ||
endif | endif | ||
if ( Player.GetItemCount ( | if ( Player.GetItemCount (SECOND FURNITURE SET ID) == 1 ) && ( Doonce2 == 0 ) | ||
( | (SECOND PARENT).Enable | ||
set TotalCount to ( TotalCount + 1 ) | set TotalCount to ( TotalCount + 1 ) | ||
set Doonce2 to 1 | set Doonce2 to 1 | ||
endif | endif | ||
;Add more if you have them | |||
;Ends Quest if All Bought | ;Ends Quest if All Bought | ||
if ( TotalCount == 2 ) ;change the "2" to the number of things you have. | if ( TotalCount == 2 ) ;change the "2" to the number of things you have. | ||
setstage ( | setstage (QUEST NAME) 30 | ||
set fQuestDelayTime to 0 | set fQuestDelayTime to 0 | ||
endif | endif | ||
Line 127: | Line 132: | ||
end | end | ||
Go to ''Quest Stages'' and add stage 10, 20 and 30. Select stage 10. <br>Make a new | Go to ''Quest Stages'' and add stage 10, 20 and 30. Select stage 10. <br>Make a new Log Entry with the text: "''I just bought a house in <TOWN NAME HERE>.''".<br> | ||
In the ''Result Script'' | In the ''Result Script'' write this: | ||
<FIRST PARENT NAME>.disable | |||
<SECOND PARENT>.disable | |||
;do this on all the parents | ;do this on all the parents | ||
Player.RemoveItem Gold001 (the | Player.RemoveItem Gold001 3000 ;(change the 3000 to your house price) | ||
Player.AddItem | Player.AddItem <Your key ID> 1 | ||
SetCellOwnership | SetCellOwnership <YOUR HOUSE CELL> | ||
SetCellFullName | SetCellFullName <YOUR HOUSE CELL> "(The name of your town) House" | ||
ModPCMiscStat 15 1 | ModPCMiscStat 15 1 | ||
set | set <YOUR QUEST NAME>.fQuestDelayTime to 1 | ||
Select stage 20 and make a new Log Entry with the text: "''Now that I've arrived at my new house in | Select stage 20 and make a new Log Entry with the text: "''Now that I've arrived at my new house in <YOUR TOWN NAME>, I may want to head over to <YOUR NPC WHO SELLS FURNITURE> at <FURNITURE NPC LOCATION> to secure some furnishings for it.''"<br><br> | ||
Select Stage 30 and make a new log entry with the text: "''I've now bought everything | Select Stage 30 and make a new log entry with the text: "''I've now bought everything <FURNITURE NPC> has for my house in <YOUR TOWN NAME HERE>.''". | ||
Check the ''Complete Quest'' to finish the quest.<br><br> | Check the ''Complete Quest'' to finish the quest.<br><br> | ||
That concludes the "House for Sale" tutorial. Enjoy your new house! | |||
[[Category:Tutorials]] | [[Category:Tutorials]] |