conversation on a placeable ?
Moderator: Event DM
- JollyOrc
- Elder Sage
- Posts: 3984
- Joined: Fri Jan 17, 2003 11:41 am
- Timezone: Europe, CE(S)T
- Location: Germany
- Contact:
conversation on a placeable ?
Hi!
I want to add a conversation to a placeable so one has a few options to do. Is that possible, and how ?
I want to add a conversation to a placeable so one has a few options to do. Is that possible, and how ?
- Lord Deathwalker
- Knight of Useless Drivel
- Posts: 67
- Joined: Fri Feb 28, 2003 4:16 am
- Location: London Ontario Canada
- Nighthawk4
- Assist DM
- Posts: 25898
- Joined: Fri Feb 07, 2003 8:32 pm
- Timezone: GMT
- DM Avatar: DruEl
- Location: The Home of the Bard of Avon
- Contact:
How do you add a conversation to an item please, so you get a choice of actions when you use it, like an Emote Wand?
Indeed, how do you define what it does when it is Used?
Indeed, how do you define what it does when it is Used?
Life is never as bad as you think it is, although that doesn't help at the time.
Orleron wrote:I think it's a fun idea if you can idiot-proof it. Problem is God always builds a better idiot.
- maxinion
- Team Member; Retired with Honors
- Posts: 2778
- Joined: Mon Mar 17, 2003 7:44 pm
- DM Avatar: Andrinor
- Location: Bay Area, CA
- Contact:
Does it, Jolly? I was under the impression you had to go toy with the OnItemActivated script of the module. Set an instance object to be GetLastObjectActivated or somesuch, and then get its tag. Compare that to the one you know you want to start the conversation, and then use the ActionStartConversation inside an if statement to do it. That's how I've always done it.
- Alexandru Stanicu
- Legacy DM
- Posts: 14074
- Joined: Sun Oct 20, 2002 10:59 pm
- Timezone: CST
- DM Avatar: The Hammer
- Location: Texas
- Nighthawk4
- Assist DM
- Posts: 25898
- Joined: Fri Feb 07, 2003 8:32 pm
- Timezone: GMT
- DM Avatar: DruEl
- Location: The Home of the Bard of Avon
- Contact:
OK, I have done the OnItemActivated part and it runs the script, but not a Conversation.
I assume I need an ActionStartConversation() in the script, but not sure how to do that.
I assume I need an ActionStartConversation() in the script, but not sure how to do that.
Life is never as bad as you think it is, although that doesn't help at the time.
Orleron wrote:I think it's a fun idea if you can idiot-proof it. Problem is God always builds a better idiot.
- Vicky
- Apprentice Scholar
- Posts: 721
- Joined: Wed Jun 11, 2003 10:28 pm
- Location: Australia - GMT+11
- Contact:
Just for future reference:
Functions that start with the word Action are added to a players action queue (that bit in the top left of your screen).
What you are doing here is getting the item to start the conversation which is why the Action function doesn't work.
Vicky
Functions that start with the word Action are added to a players action queue (that bit in the top left of your screen).
What you are doing here is getting the item to start the conversation which is why the Action function doesn't work.
Vicky
Thank goodness Vicky finally gave up that powergamer character, Tehenen. If I saw her one more time at the Ice Caves, I was gonna throw up! Jesus. To go from level 1 to 5 in 8 months is just ridiculous. I bet she has like 4200 gold too. Unbelievable how fast she was gaining levels and wealth.
- Nighthawk4
- Assist DM
- Posts: 25898
- Joined: Fri Feb 07, 2003 8:32 pm
- Timezone: GMT
- DM Avatar: DruEl
- Location: The Home of the Bard of Avon
- Contact:
I have the item, with a conversation and a script of the same name.
The OnActivateItem script is in the Module, the script contains the BeginConversation command.
When I try a different item, it does work. However, the one with the conversation still does not begin the conversation.
When I edit the conversation, it has no owner - but the item does not appear as a valid owner of a conversation.
Is that why it will not start the conversation?
--------------------------------
Edit:
Eventually, I came up with this:
This does work. As far as I can tell, the item is not directly involved in the conversation. It is just the thing used to make it start. The PC is talking to himself or herself.
The OnActivateItem script is in the Module, the script contains the BeginConversation command.
When I try a different item, it does work. However, the one with the conversation still does not begin the conversation.
When I edit the conversation, it has no owner - but the item does not appear as a valid owner of a conversation.
Is that why it will not start the conversation?
--------------------------------
Edit:
Eventually, I came up with this:
Code: Select all
void main()
{
object oPC;
object oTarget;
oPC = GetItemActivator();
oTarget = oPC;
AssignCommand(oTarget, ActionStartConversation(oPC, "emotewand"));
}
Life is never as bad as you think it is, although that doesn't help at the time.
Orleron wrote:I think it's a fun idea if you can idiot-proof it. Problem is God always builds a better idiot.
- maxinion
- Team Member; Retired with Honors
- Posts: 2778
- Joined: Mon Mar 17, 2003 7:44 pm
- DM Avatar: Andrinor
- Location: Bay Area, CA
- Contact:
That's fine. Very inefficient though. Replace all those object calls with object oTarget=GetItemActivator();Nighthawk4 wrote:I have the item, with a conversation and a script of the same name.
The OnActivateItem script is in the Module, the script contains the BeginConversation command.
When I try a different item, it does work. However, the one with the conversation still does not begin the conversation.
When I edit the conversation, it has no owner - but the item does not appear as a valid owner of a conversation.
Is that why it will not start the conversation?
--------------------------------
Edit:
Eventually, I came up with this:
This does work. As far as I can tell, the item is not directly involved in the conversation. It is just the thing used to make it start. The PC is talking to himself or herself.Code: Select all
void main() { object oPC; object oTarget; oPC = GetItemActivator(); oTarget = oPC; AssignCommand(oTarget, ActionStartConversation(oPC, "emotewand")); }
Keep in mind this will run for every single OnItemActivated. You may want to do a comparison to the tag of the called item, to a specific check. Would work better.
For anyone who d/l'd the first "Witch's Wake" module, go check out the "Mountain Cemetery" area. All them little boulders they used to kludge climbing up hills use a very, very smooth conversation call.
Bye Now,
Jerry Cornelius - Script Monkey
Bye Now,
Jerry Cornelius - Script Monkey
Everything I need to know in life, I learned from being an alcoholic.
- Aloro
- Team Member; Retired with Honors
- Posts: 12805
- Joined: Sat Dec 28, 2002 5:11 am
- Location: Rainbow's End
- Contact:
Any of you who are subcontractors, and who want to make placeables talk, can just use the script I wrote and posted to the Library forum.
- Aloro
- Aloro
Aleksandr Solzhenitsyn wrote:The meaning of earthly existence lies, not as we have grown used to thinking, in prosperity, but in the development of the soul.