forked from Mirrors/openclonk
streamline tutorial guide script interface
parent
80ad1a5650
commit
30d45fcdc3
|
@ -110,7 +110,7 @@ protected func InitializePlayer(int plr)
|
|||
// Create tutorial guide, add messages, show first.
|
||||
var guide = CreateObject(TutorialGuide, 0, 0 , plr);
|
||||
guide->AddGuideMessage("$MsgPlaygroundWelcome$");
|
||||
guide->ShowGuideMessage(0);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("RemoveGuide", clonk, 100, 36 * 10);
|
||||
|
||||
// Achievement: Playground is completed by just playing it.
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
|
||||
|
||||
local messages; // A container to hold all messages.
|
||||
local message_index; // Progress in reading messages.
|
||||
local message_open; // Currently open message.
|
||||
local close_on_last; // Close guide on after last message.
|
||||
|
||||
|
@ -19,7 +18,6 @@ protected func Initialize()
|
|||
// Visibility
|
||||
this.Visibility = VIS_Owner;
|
||||
messages = [];
|
||||
message_index = nil;
|
||||
message_open = nil;
|
||||
close_on_last = false;
|
||||
|
||||
|
@ -37,10 +35,8 @@ protected func Initialize()
|
|||
*/
|
||||
public func AddGuideMessage(string msg)
|
||||
{
|
||||
// Automatically set index to current.
|
||||
message_index = GetLength(messages);
|
||||
// Add message to list.
|
||||
messages[message_index] = msg;
|
||||
messages[GetLength(messages)] = msg;
|
||||
// Update the menu, because of the next button.
|
||||
if (message_open != nil)
|
||||
ShowGuideMenu(message_open);
|
||||
|
@ -48,15 +44,16 @@ public func AddGuideMessage(string msg)
|
|||
}
|
||||
|
||||
/* Shows a guide message to the player, also resets the internal index to that point.
|
||||
* @param show_index The message corresponding to this index will be shown.
|
||||
* @param show_index The message corresponding to this index will be shown, if nil the last message will be shown.
|
||||
*/
|
||||
public func ShowGuideMessage(int show_index)
|
||||
{
|
||||
message_index = Max(0, show_index);
|
||||
ShowGuideMenu(message_index);
|
||||
// Increase index if possible.
|
||||
if (GetLength(messages) > message_index + 1)
|
||||
message_index++;
|
||||
// If the index is not specified show last message, index must be between first and last message.
|
||||
if (show_index == nil)
|
||||
show_index = GetLength(messages) - 1;
|
||||
show_index = BoundBy(show_index, 0, GetLength(messages) - 1);
|
||||
// Show the guide message.
|
||||
ShowGuideMenu(show_index);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -140,10 +137,6 @@ private func InitializeMenu()
|
|||
ID = 1,
|
||||
Right = Format("0%%+%dem", menu_height),
|
||||
Symbol = GetID(),
|
||||
BackgroundColor = {Std = 0, Hover = 0x50ffffff},
|
||||
OnMouseIn = GuiAction_SetTag("Hover"),
|
||||
OnMouseOut = GuiAction_SetTag("Std"),
|
||||
OnClick = GuiAction_Call(this, "ShowCurrentMessage"),
|
||||
};
|
||||
var prop_text =
|
||||
{
|
||||
|
@ -151,8 +144,7 @@ private func InitializeMenu()
|
|||
ID = 2,
|
||||
Left = Format("0%%%s", ToEmString(10 * menu_height + text_margin)),
|
||||
Right = Format("100%%%s", ToEmString(- 5 * menu_height - text_margin)),
|
||||
Text = "",
|
||||
BackgroundColor = {Std = 0},
|
||||
Text = nil,
|
||||
};
|
||||
prop_next =
|
||||
{
|
||||
|
@ -271,19 +263,8 @@ private func CloseGuideMenu()
|
|||
return;
|
||||
}
|
||||
|
||||
// Menu callback: the player has clicked on the guide.
|
||||
private func ShowCurrentMessage()
|
||||
{
|
||||
// Show guide message if there is a new one.
|
||||
ShowGuideMenu(message_index);
|
||||
// Increase index if possible.
|
||||
if (GetLength(messages) > message_index + 1)
|
||||
message_index++;
|
||||
return;
|
||||
}
|
||||
|
||||
// Menu callback: the player has clicked on next message.
|
||||
public func ShowNextMessage()
|
||||
private func ShowNextMessage()
|
||||
{
|
||||
if (message_open >= GetLength(messages) - 1)
|
||||
{
|
||||
|
@ -296,7 +277,7 @@ public func ShowNextMessage()
|
|||
}
|
||||
|
||||
// Menu callback: the player has clicked on previous message.
|
||||
public func ShowPreviousMessage()
|
||||
private func ShowPreviousMessage()
|
||||
{
|
||||
if (message_open == 0)
|
||||
return;
|
||||
|
|
|
@ -3,4 +3,4 @@ Name=Lernrundenführer
|
|||
MsgCurrent=Aktuelle Nachricht
|
||||
MsgNext=Nächste Nachricht
|
||||
MsgPrevious=Letzte Nachricht
|
||||
MsgClose=Führer schließen
|
||||
MsgClose=Lernrundenführer schließen
|
|
@ -3,4 +3,4 @@ Name=Tutorial guide
|
|||
MsgCurrent=Current message
|
||||
MsgNext=Next message
|
||||
MsgPrevious=Previous message
|
||||
MsgClose=Close guide
|
||||
MsgClose=Close tutorial guide
|
|
@ -316,7 +316,7 @@ global func FxGoalOutroStart(object target, proplist effect, int temp)
|
|||
|
||||
// Show guide message congratulating.
|
||||
guide->AddGuideMessage("$MsgTutorialCompleted$");
|
||||
guide->ShowGuideMessage(8);
|
||||
guide->ShowGuideMessage();
|
||||
|
||||
// Halt clonk and disable player controls.
|
||||
DisablePlrControls(effect.plr);
|
||||
|
@ -368,7 +368,7 @@ global func FxTutorialScaleTimer(object target, proplist effect, int timer)
|
|||
var up = GetPlayerControlAssignment(plr, CON_Up, true, true);
|
||||
var down = GetPlayerControlAssignment(plr, CON_Down, true, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialScaleWall$", up, down));
|
||||
guide->ShowGuideMessage(3);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialHangle", nil, 100, 2);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -383,7 +383,7 @@ global func FxTutorialHangleTimer(object target, proplist effect, int timer)
|
|||
var plr = clonk->GetOwner();
|
||||
var down = GetPlayerControlAssignment(plr, CON_Down, true, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialHangle$", down));
|
||||
guide->ShowGuideMessage(4);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialJump", nil, 100, 2);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -395,7 +395,7 @@ global func FxTutorialJumpTimer(object target, proplist effect, int timer)
|
|||
if (FindObject(Find_ID(Clonk), Find_InRect(744, 568, 56, 40)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialJump$");
|
||||
guide->ShowGuideMessage(5);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialSwimming", nil, 100, 2);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -414,7 +414,7 @@ global func FxTutorialSwimmingTimer(object target, proplist effect, int timer)
|
|||
var down = GetPlayerControlAssignment(plr, CON_Down, true, true);
|
||||
var control_keys = Format("[%s] [%s] [%s] [%s]", up, left, down, right);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialSwimming$", control_keys));
|
||||
guide->ShowGuideMessage(6);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialDiving", nil, 100, 2);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -426,7 +426,7 @@ global func FxTutorialDivingTimer(object target, proplist effect, int timer)
|
|||
if (FindObject(Find_ID(Clonk), Find_InRect(472, 280, 48, 64)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialDiving$");
|
||||
guide->ShowGuideMessage(7);
|
||||
guide->ShowGuideMessage();
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
return FX_OK;
|
||||
|
|
|
@ -185,7 +185,7 @@ protected func InitializePlayer(int plr)
|
|||
// Create tutorial guide, add messages, show first.
|
||||
guide = CreateObject(TutorialGuide, 0, 0, plr);
|
||||
guide->AddGuideMessage("$MsgTutorialIntro$");
|
||||
guide->ShowGuideMessage(0);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialShovel", nil, 100, 5);
|
||||
return;
|
||||
}
|
||||
|
@ -213,7 +213,7 @@ global func FxGoalOutroStart(object target, proplist effect, int temp)
|
|||
|
||||
// Show guide message congratulating.
|
||||
guide->AddGuideMessage("$MsgTutorialCompleted$");
|
||||
guide->ShowGuideMessage(11);
|
||||
guide->ShowGuideMessage();
|
||||
return FX_OK;
|
||||
}
|
||||
|
||||
|
@ -250,7 +250,7 @@ global func FxTutorialShovelTimer()
|
|||
var plr = clonk->GetOwner();
|
||||
var pick_up = GetPlayerControlAssignment(plr, CON_PickUp, true, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialShovel$", pick_up));
|
||||
guide->ShowGuideMessage(1);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialInventory", nil, 100, 5);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -274,7 +274,7 @@ global func FxTutorialInventoryTimer()
|
|||
var inv_inv_scroll_down = GetPlayerControlAssignment(plr, CON_InventoryShiftBackward, true, true);
|
||||
var inv_scroll = Format("[%s][%s]", inv_inv_scroll_up, inv_inv_scroll_down);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialInventory$", inv_hotkeys, inv_scroll));
|
||||
guide->ShowGuideMessage(2);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialDigging", nil, 100, 5);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -293,7 +293,7 @@ global func FxTutorialDiggingTimer()
|
|||
{
|
||||
var use = GetPlayerControlAssignment(plr, CON_Use, true, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialDigging$", use));
|
||||
guide->ShowGuideMessage(3);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialFirestones", nil, 100, 5);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -306,7 +306,7 @@ global func FxTutorialFirestonesTimer()
|
|||
if (FindObject(Find_OCF(OCF_CrewMember), Find_InRect(288, 384, 24, 96)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialFirestones$");
|
||||
guide->ShowGuideMessage(4);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialWipfHole", nil, 100, 5);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -321,7 +321,7 @@ global func FxTutorialWipfHoleTimer()
|
|||
var plr = clonk->GetOwner();
|
||||
var throw = GetPlayerControlAssignment(plr, CON_Throw, true, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialFoundWipf$", throw));
|
||||
guide->ShowGuideMessage(5);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialBlastedRock", nil, 100, 5);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -336,7 +336,7 @@ global func FxTutorialBlastedRockTimer()
|
|||
var plr = clonk->GetOwner();
|
||||
var drop = GetPlayerControlAssignment(plr, CON_DropHotkey1, true, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialBlastedRock$", drop));
|
||||
guide->ShowGuideMessage(6);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialFedWipf", nil, 100, 5);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -349,7 +349,7 @@ global func FxTutorialFedWipfTimer()
|
|||
if (wipf->HadFood())
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialFedWipf$");
|
||||
guide->ShowGuideMessage(7);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialDigOutLoam", nil, 100, 5);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -364,7 +364,7 @@ global func FxTutorialDigOutLoamTimer()
|
|||
var plr = clonk->GetOwner();
|
||||
var use = GetPlayerControlAssignment(plr, CON_Use, true, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialDigOutLoam$", use));
|
||||
guide->ShowGuideMessage(8);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialFragileBridge", nil, 100, 5);
|
||||
var bridge = FindObject(Find_ID(Ropebridge));
|
||||
bridge->SetFragile();
|
||||
|
@ -379,7 +379,7 @@ global func FxTutorialFragileBridgeTimer()
|
|||
if (clonk)
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialFragileBridge$");
|
||||
guide->ShowGuideMessage(9);
|
||||
guide->ShowGuideMessage();
|
||||
// Stop the controls of the clonk for a few seconds.
|
||||
DisablePlrControls(clonk->GetOwner());
|
||||
clonk->SetComDir(COMD_Stop);
|
||||
|
@ -395,7 +395,7 @@ global func FxTutorialWaitForBridgeTimer(object target, proplist effect, int tim
|
|||
if (time > 2 * 36)
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialMakeLoamBridge$");
|
||||
guide->ShowGuideMessage(10);
|
||||
guide->ShowGuideMessage();
|
||||
// Start the controls of the clonk again.
|
||||
EnablePlrControls(effect.plr);
|
||||
return FX_Execute_Kill;
|
||||
|
|
|
@ -279,7 +279,7 @@ protected func InitializePlayer(int plr)
|
|||
guide = CreateObject(TutorialGuide, 0, 0, plr);
|
||||
var interact = GetPlayerControlAssignment(plr, CON_Interact, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialWipfville$", interact));
|
||||
guide->ShowGuideMessage(0);
|
||||
guide->ShowGuideMessage();
|
||||
var effect = AddEffect("TutorialTalkedToLumberjack", nil, 100, 5);
|
||||
effect.plr = plr;
|
||||
return;
|
||||
|
@ -304,7 +304,7 @@ global func FxGoalOutroStart(object target, proplist effect, int temp)
|
|||
|
||||
// Show guide message congratulating.
|
||||
guide->AddGuideMessage("$MsgTutorialCompleted$");
|
||||
guide->ShowGuideMessage(13);
|
||||
guide->ShowGuideMessage();
|
||||
return FX_OK;
|
||||
}
|
||||
|
||||
|
@ -344,7 +344,7 @@ global func FxTutorialTalkedToLumberjackStop(object target, proplist effect, int
|
|||
if (temp)
|
||||
return FX_OK;
|
||||
guide->AddGuideMessage("$MsgTutorialFindRock$");
|
||||
guide->ShowGuideMessage(1);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialFoundLorry", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_OK;
|
||||
|
@ -355,7 +355,7 @@ global func FxTutorialFoundLorryTimer(object target, proplist effect)
|
|||
if (FindObject(Find_OCF(OCF_CrewMember), Find_Owner(effect.plr), Find_InRect(168, 576, 104, 72)))
|
||||
{
|
||||
guide->AddGuideMessage(Format("$MsgTutorialDynamiteLorry$", GetPlayerControlAssignment(effect.plr, CON_Contents, true)));
|
||||
guide->ShowGuideMessage(2);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialObtainedDynamite", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -369,7 +369,7 @@ global func FxTutorialObtainedDynamiteTimer(object target, proplist effect)
|
|||
if (clonk && FindObject(Find_ID(Dynamite), Find_Container(clonk)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialBlastRock$");
|
||||
guide->ShowGuideMessage(3);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialBlastedRock", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -382,7 +382,7 @@ global func FxTutorialBlastedRockTimer(object target, proplist effect)
|
|||
if (FindObject(Find_ID(Rock), Find_InRect(180, 592, 100, 64)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialPickUpRock$");
|
||||
guide->ShowGuideMessage(4);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialObtainedRock", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -396,7 +396,7 @@ global func FxTutorialObtainedRockTimer(object target, proplist effect)
|
|||
if (clonk && ObjectCount(Find_ID(Rock), Find_Container(clonk)) >= 3)
|
||||
{
|
||||
guide->AddGuideMessage(Format("$MsgTutorialSawmill$", GetPlayerControlAssignment(effect.plr, CON_Contents, true)));
|
||||
guide->ShowGuideMessage(5);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialSawmillFinished", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -409,7 +409,7 @@ global func FxTutorialSawmillFinishedTimer(object target, proplist effect)
|
|||
if (FindObject(Find_ID(Sawmill)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialTalkToFireman$");
|
||||
guide->ShowGuideMessage(6);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialTalkedForFlagpole", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
// Notify lumberjack the sawmill is done.
|
||||
|
@ -442,7 +442,7 @@ global func FxTutorialTalkedForFlagpoleTimer(object target, proplist effect)
|
|||
if (effect.talked_to_fireman && effect.talked_to_builder)
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialConstructFlagpole$");
|
||||
guide->ShowGuideMessage(7);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialPlacedFlagpole", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -455,7 +455,7 @@ global func FxTutorialPlacedFlagpoleTimer(object target, proplist effect)
|
|||
if (FindObject(Find_ID(ConstructionSite), Find_AtRect(480, 356, 32, 20)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialFlagpoleMaterials$");
|
||||
guide->ShowGuideMessage(8);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialTalkedToLumberjack2", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -473,7 +473,7 @@ global func FxTutorialTalkedToLumberjack2Stop(object target, proplist effect, in
|
|||
if (temp)
|
||||
return FX_OK;
|
||||
guide->AddGuideMessage("$MsgTutorialAxeChopping$");
|
||||
guide->ShowGuideMessage(9);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialWoodInSite", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_OK;
|
||||
|
@ -485,7 +485,7 @@ global func FxTutorialWoodInSiteTimer(object target, proplist effect)
|
|||
if (site && ObjectCount(Find_ID(Wood), Find_Container(site)) >= 3)
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialOreMining$");
|
||||
guide->ShowGuideMessage(10);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialHasOreCoal", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -499,7 +499,7 @@ global func FxTutorialHasOreCoalTimer(object target, proplist effect)
|
|||
if (FindObject(Find_ID(Ore), Find_Container(clonk)) && FindObject(Find_ID(Coal), Find_Container(clonk)))
|
||||
{
|
||||
guide->AddGuideMessage(Format("$MsgTutorialProduceMetal$", GetPlayerControlAssignment(effect.plr, CON_Contents, true)));
|
||||
guide->ShowGuideMessage(11);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialMetalFinished", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -512,7 +512,7 @@ global func FxTutorialMetalFinishedTimer(object target, proplist effect)
|
|||
if (FindObject(Find_ID(Metal)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialMetalToSite$");
|
||||
guide->ShowGuideMessage(12);
|
||||
guide->ShowGuideMessage();
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
return FX_OK;
|
||||
|
|
|
@ -191,7 +191,7 @@ protected func InitializePlayer(int plr)
|
|||
// Create tutorial guide, add messages, show first.
|
||||
guide = CreateObjectAbove(TutorialGuide, 0, 0, plr);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialFindRubies$", interact, control_keys));
|
||||
guide->ShowGuideMessage(0);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialFindStalactite", nil, 100, 2);
|
||||
return;
|
||||
}
|
||||
|
@ -216,7 +216,7 @@ global func FxGoalOutroStart(object target, proplist effect, int temp)
|
|||
return FX_OK;
|
||||
// Show guide message congratulating.
|
||||
guide->AddGuideMessage("$MsgTutorialCompleted$");
|
||||
guide->ShowGuideMessage(5);
|
||||
guide->ShowGuideMessage();
|
||||
return FX_OK;
|
||||
}
|
||||
|
||||
|
@ -248,7 +248,7 @@ global func FxTutorialFindStalactiteTimer(object target, proplist effect, int ti
|
|||
if (clonk)
|
||||
{
|
||||
guide->AddGuideMessage(Format("$MsgTutorialParkAirship$"));
|
||||
guide->ShowGuideMessage(1);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialAirshipParked", nil, 100, 2);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -265,7 +265,7 @@ global func FxTutorialAirshipParkedTimer(object target, proplist effect, int tim
|
|||
var left = GetPlayerControlAssignment(plr, CON_Left, true, true);
|
||||
var right = GetPlayerControlAssignment(plr, CON_Right, true, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialLadderJump$", left, right));
|
||||
guide->ShowGuideMessage(2);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialOnStalactite", nil, 100, 2);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -277,7 +277,7 @@ global func FxTutorialOnStalactiteTimer(object target, proplist effect, int time
|
|||
if (FindObject(Find_ID(Clonk), Find_InRect(810, 150, 24, 72)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialBlastGems$");
|
||||
guide->ShowGuideMessage(3);
|
||||
guide->ShowGuideMessage();
|
||||
AddEffect("TutorialCollectGems", nil, 100, 2);
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
|
@ -289,7 +289,7 @@ global func FxTutorialCollectGemsTimer(object target, proplist effect, int timer
|
|||
if (FindObject(Find_ID(Ruby)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialCollectGems$");
|
||||
guide->ShowGuideMessage(4);
|
||||
guide->ShowGuideMessage();
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
return FX_OK;
|
||||
|
|
|
@ -199,7 +199,7 @@ protected func InitializePlayer(int plr)
|
|||
// Create tutorial guide, add messages, show first.
|
||||
guide = CreateObject(TutorialGuide, 0, 0, plr);
|
||||
guide->AddGuideMessage("$MsgTutorialFloodedMines$");
|
||||
guide->ShowGuideMessage(0);
|
||||
guide->ShowGuideMessage();
|
||||
var effect = AddEffect("TutorialTalkedToMineChief", nil, 100, 5);
|
||||
effect.plr = plr;
|
||||
return;
|
||||
|
@ -221,7 +221,7 @@ global func FxGoalOutroStart(object target, proplist effect, int temp)
|
|||
return FX_OK;
|
||||
// Show guide message congratulating.
|
||||
guide->AddGuideMessage("$MsgTutorialCompleted$");
|
||||
guide->ShowGuideMessage(10);
|
||||
guide->ShowGuideMessage();
|
||||
return FX_OK;
|
||||
}
|
||||
|
||||
|
@ -263,7 +263,7 @@ global func FxTutorialTalkedToMineChiefStop(object target, proplist effect, int
|
|||
if (temp)
|
||||
return FX_OK;
|
||||
guide->AddGuideMessage("$MsgTutorialConnectPipe$");
|
||||
guide->ShowGuideMessage(1);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialConnectedSourcePipe", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_OK;
|
||||
|
@ -281,7 +281,7 @@ global func FxTutorialConnectedSourcePipeTimer(object target, proplist effect)
|
|||
if (connected_source)
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialFindMetalLorry$");
|
||||
guide->ShowGuideMessage(2);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialFoundMetalLorry", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -294,7 +294,7 @@ global func FxTutorialFoundMetalLorryTimer(object target, proplist effect)
|
|||
if (FindObject(Find_OCF(OCF_CrewMember), Find_Owner(effect.plr), Find_AtRect(586, 866, 40, 24)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialMoveLorry$");
|
||||
guide->ShowGuideMessage(3);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialShovedMetalLorry", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -308,7 +308,7 @@ global func FxTutorialShovedMetalLorryTimer(object target, proplist effect)
|
|||
{
|
||||
var interact = GetPlayerControlAssignment(effect.plr, CON_Interact, true, true);
|
||||
guide->AddGuideMessage(Format("$MsgTutorialCallElevator$", interact));
|
||||
guide->ShowGuideMessage(4);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialTalkedToExplosiveExpert", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -329,7 +329,7 @@ global func FxTutorialTalkedToExplosiveExpertTimer(object target, proplist effec
|
|||
if (effect.has_talked && FindObject(Find_ID(ElevatorCase), Find_AtRect(282, 816, 20, 48)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialProduceWallKit$");
|
||||
guide->ShowGuideMessage(5);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialProducedWallKit", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -343,7 +343,7 @@ global func FxTutorialProducedWallKitTimer(object target, proplist effect)
|
|||
if (FindObject(Find_ID(WallKit), Find_Container(workshop)))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialCloseMineShaft$");
|
||||
guide->ShowGuideMessage(6);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialHasClosedShaft", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -358,7 +358,7 @@ global func FxTutorialHasClosedShaftTimer(object target, proplist effect)
|
|||
if (pathlength1 == nil && pathlength2 == nil)
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialWaitAndMoveLorry$");
|
||||
guide->ShowGuideMessage(7);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialHasPlacedLorryInCase", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -374,7 +374,7 @@ global func FxTutorialHasPlacedLorryInCaseTimer(object target, proplist effect)
|
|||
if (elevator_case->FindObject(Find_ID(Lorry), Find_AtPoint()))
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialBlastWall$");
|
||||
guide->ShowGuideMessage(8);
|
||||
guide->ShowGuideMessage();
|
||||
var new_effect = AddEffect("TutorialHasBlastedWall", nil, 100, 5);
|
||||
new_effect.plr = effect.plr;
|
||||
return FX_Execute_Kill;
|
||||
|
@ -396,7 +396,7 @@ global func FxTutorialHasBlastedWallTimer(object target, proplist effect)
|
|||
if (blasted_free)
|
||||
{
|
||||
guide->AddGuideMessage("$MsgTutorialSwimUp$");
|
||||
guide->ShowGuideMessage(9);
|
||||
guide->ShowGuideMessage();
|
||||
return FX_Execute_Kill;
|
||||
}
|
||||
return FX_OK;
|
||||
|
|
Loading…
Reference in New Issue