I'm having trouble with conversations, how do you get people to give you things and to get them to take things away from you?
------------------
I'm having trouble with conversations, how do you get people to give you things and to get them to take things away from you?
------------------
This is what the Read-Me says:
CONVERSATIONS
If no gotos are specified the conversation will be displayed progressing
in a linear fashion. You can think of a conversation as sort of a
very rudimentary BASIC program.
To goto a line and perform its actions but not display its text, enter
the negative of the line number in the "goto" field.
CONSTANTS
<arg>: argument specified in line action dialog
If conditions
-------------
1: true if player has <arg> coins or more
2: true if player has item of type <arg>
4: true if flag # <arg> is set
5: true if player permflag # <arg> is set to <arg2>
Action conditions
-----------------
1: remove <arg> coins
2: give player item of type <arg> <arg2: how many>
(1: silver key, 2: gold key, 3: plat key, 4: magic potion, 5: health potion)
3: remove item of type <arg>
4: set permanent flag # <arg>
5: set player permflag # <arg> to <arg2>
(1, 2, or 3)
8: permanently validate sprite <arg> on level <arg2>
9: destroy this sprite permanently
------------------
Don't take life too seriously, nobody gets out alive anyway.
Think of conversations as if (if conditions) then (goto line) else (if conditions isn't true) statements with modifiers.
There can be 2 if statements each with 2 modifiers and 2 actions with 2 modifiers for each line.
So let's run through the if statements:
Type in the first box
1: true if player has <arg> coins or more
2: true if player has item of type <arg>
4: true if flag # <arg> is set
5: true if player permflag # <arg> is set to <arg2>
Now in the second box fill in the <arg> numbers.
So if I want to check if the player has 30 coins I would type
1 30
and then the line to go to if this is true.
Then down in the second goto box (down after the actions) I would type the the line to goto if the if condition wasn't true.
Now let's define the actions.
Type in the # for the action to happen
1: remove <arg> coins
2: give player item of type <arg> <arg2: how many>
(1: silver key, 2: gold key, 3: plat key, 4: magic potion, 5: health potion)
3: remove item of type <arg>
4: set permanent flag # <arg>
5: set player permflag # <arg> to <arg2>
(1, 2, or 3)
8: permanently validate sprite <arg> on level <arg2>
9: destroy this sprite permanently
To continue with our scenario I would type
1 30 in the first line of the actions, to remove 30 coins.
To give the player 1 silver key I would type
2 in the first box of the second line and 1 in the second box and 1 in the third box.
Now that we can give and take from the player let's set up the conversation.
The conversation will start at the first line and go to the next line down, unless a goto line is specified.
When writing your conversations the character speaking must always have the name and picture ID (which you can find by opening the sprites file in ResEdit and selecting PICT resource) written down in the fields next to the conversation. To have allow Ferazel to have a choice in what to say press the edit button and type in the possible responces, selecting a goto line for each responce.
To have certain things happen before the conversation occurs (such as players remebering you that you came, or setting off a Permflag) use the Pre-Conversation button.
Type in your if conditions and goto lines.
Normally you have to have if conditions in there own conversation fields, because you have selected goto lines to check for things such as coins. To do this in the conversationg field type "(coin check)". It doesn't need a character name or pict ID. You can then press the edit button, and type in the if commands and goto lines.
After the last line for the conversation, press the edit button, and type 20 in the last goto field of the dialog box. This ends the conversation. Remember that if your conversation branches off into different endings, that each ending has to have that goto line specify 20.
Take a look at these pictures from one of my conversations. They show you examples of what I was talking about:
(url="http://"http://homepage.mac.com/burnum/conv2.gif")PreConversation Screen(/url)- I wanted different things to happen if Ferazel had or hadn't encounter a PermFlag in the level. 5 specified that I was talking about a permflag. The permflag id was 1. And 1 told the computer that Ferazel had to have entered the area. Goto line 3 if it is true, if not goto line 1.
(url="http://"http://homepage.mac.com/burnum/conv1.gif")Main Screen(/url) - Notice how I set up the conversation and the checks.
(url="http://"http://homepage.mac.com/burnum/conv3.gif")Edit Screen(/url) - After line 4, Ferazel had two choices. Line 6 goes to the coin check. Line 20 ends the conversation.
(url="http://"http://homepage.mac.com/burnum/conv4.gif")Perform Action(/url) - These are the actions performed in line 5. The first action line he is taking 30 coins. The second action line he is giving him an ice pick. And then the conversation ends with a goto line 20.
------------------
(url="http://"http://www.AmbrosiaSW.com/cgi-bin/ubb/Ultimate.cgi?action=email&ToWhom;=Burnum")Stephen(/url) ż' ((url="http://"http://www.AmbrosiaSW.com/cgi-bin/ubb/ubbmisc.cgi?action=getbio&UserName;=Burnum")The Burnum Man(/url))
Play Ferazel's Wand? (url="http://"http://homepage.mac.com/burnum/ferazel.hqx")Download Equity Of Redemption!(/url) - A New Ferazel's Wand World