# Question Action¶

This type is described as an action expecting the user to make a decision on choices that answer a specific question. Answers are expected to be sprites on a Button gameObject.

Choosing a wrong answer does not perform the action, but registers the selection as wrong. When the correct answer is selected, the action performs after 5 seconds.

Example of Question Action:

/// <summary>
/// This is an example of Question Action
/// In this Action users are asked a question and they need to answer to complete the Action
/// The developer can set multiple answers by modifying the question prefab. In this example we have two answers
/// </summary>
public class QuestionActionExample : QuestionAction
{
/// <summary>
/// Initialize() method overrides base.Initialize and sets the question prefab
/// </summary>
public override void Initialize()
{
//Sets the question prefab that will spawn
SetQuestionPrefab("Lesson0/Stage0/Action1/QuestionPRefabExample");

//This method enables the raycast so users can answer using their controllers
InterfaceManagement.Get.InterfaceRaycastActivation(true);

base.Initialize();
}
}


## Action Script Explanation¶

1. SetQuestionPrefab ⇒ Spawns the Action prefab containing the question to be answered. Has two arguments:

1.1. The prefab to be spawned

1.2. The Question itself (expected type: string)

2. AddAnswerImage ⇒ Spawns the Answer gameObject. Automatically attached onto the question Canvas.