Hello,
I've finished making my first quest with the dialogue system and so far it works incredibly well.
I'd like each quest to give a specific item to the player.
Right now my inventory system works with scriptable objects, and the item is given to the player through a method on a monobehavior that takes that scriptable object (and triggers UI components and all that jazz).
Question 1. is there a way to reference a scriptable object as a variable? so when the quest is complete I could somehow pass it through the method. (when I was looking at the variable system I thought, maybe I could make a reference table with integers, that refers to an item to give the player)
Question 2. How would I go about invoking a method that passes through that scriptable object?
alternatively, is there just a better way of doing this that is already designed into the dialogue system
Thanks so much for your time!
Quest Items as Scriptable Objects
Re: Quest Items as Scriptable Objects
Hi,
The Dialogue System has a tradeoff in that its content is all text. On the plus side, this means you can export and import (e.g., import from external formats such as articy:draft, export to CSV) without losing anything. But on the minus side, it doesn't allow for asset-based references since those are Unity GUID-specific. You could either specify the item by name, or write a custom field type that shows the items in a dropdown menu. Internally, the info stored in the field would be a string or int representing an item in an item database asset or something like that. Several Dialogue System games use this approach.
The Dialogue System has a tradeoff in that its content is all text. On the plus side, this means you can export and import (e.g., import from external formats such as articy:draft, export to CSV) without losing anything. But on the minus side, it doesn't allow for asset-based references since those are Unity GUID-specific. You could either specify the item by name, or write a custom field type that shows the items in a dropdown menu. Internally, the info stored in the field would be a string or int representing an item in an item database asset or something like that. Several Dialogue System games use this approach.
-
- Posts: 13
- Joined: Mon Jan 16, 2023 9:44 am
Re: Quest Items as Scriptable Objects
Thanks for your help!
It works fine if I just refer to an indexed table of my scriptable objects! thanks for your help!
It works fine if I just refer to an indexed table of my scriptable objects! thanks for your help!
Re: Quest Items as Scriptable Objects
Glad to help!