PowerQuest 0.18.12
|
The PowerQuest tool manages scripts for you to make it easy to find the bit you want to edit.
There's a button for each "interaction" that can be made on each object. Eg. The Use
, Look
, Inv
buttons next to hotspots. They open the script editor at the right place for you, so you don't have to go scrawling through scripts to find the right file and function to edit!
So, say you have a prop called "door", clicking the "Use" button next to it in the editor will:
OnInteractHotspotDoor()
function automatically.Here's what the code in that image does:
If that's a bit scary, don't worry!
When you open a script from the PowerQuest Editor, it'll open initially in the Quest Script Editor (pictured above). This is a streamlined script editor for quickly editing dialog and quick interactions.
Editor controls:
Auto-Load
is ticked, interacting with things in game will automatically open the script for you to edit.Compile
to immediately test your changes!View C#
button to explore the script in Visual Studio. There you have access to the entire files to add your own functions, proper autocomplete, syntax and error highlighting, debugging tools, etc, etc.What If I have errors?
It'll happen! It's easy to miss a semi-colon at the end of the line and things like that.
You'll get a red error in the unity console (or at the bottom of the screen). Double click errors in that console window to take you to that line in your code. Hopefully the message there can make sense for you to fix. If not post in the discord and someone'll sort you out!
How do I know what to type?
Have a look at the PowerQuest API page!
Next: Look at how to set up your project in the Editor Manual.
Or: Dive further into scripting on the PowerQuest API page, which explains the different objects and functions you can use.
But I'm used to using Visual Studio (etc), can't I do that?
You can and should use both! It's easy to switch between them. The Quest Script editor has a __'View C#'__ button that opens your IDE (VisualStudio,VSCode,etc) at the right file and location.
There's is a bunch of advantages to the Quest Script editor:
yield return
in front of every blocking function (ones that return Coroutine ) Eg:C.Dave.WalkTo(12,34);
instead of yield return C.Dave.WalkTo(12,34);
Dave: Hello!
instead of yield return C.Dave.Say("Hello");
Bill: Hi Dave!
Display: This is a message box
instead of yield return C.Display("This is a message box");
P.Door
instead of Props("Door")
WalkToClicked
instead of yield return C.WalkToClicked();
FaceClicked
instead of C.FaceClicked();
...
instead of yield return E.WaitSkip(0.5f);
(use more or less dots for longer/shorter pauses)PQ Tools
-> Editor Settings
. (If you're handy with regular expressions)And there's limitations to the Quest Script Editor too:
Next: Look at how to set up your project in the Editor Manual.
Or: Dive further into scripting on the PowerQuest API page, which explains the different objects and functions you can use.