79 lines
2.3 KiB
Plaintext
79 lines
2.3 KiB
Plaintext
|
#include "mk_inc_generic"
|
||
|
#include "mk_inc_editor"
|
||
|
#include "mk_inc_craft"
|
||
|
|
||
|
int StartingConditional()
|
||
|
{
|
||
|
object oPC = GetPCSpeaker();
|
||
|
object oTarget = MK_GetCurrentTarget(oPC);
|
||
|
object oItem = CIGetCurrentModItem(oPC);
|
||
|
|
||
|
switch (CIGetCurrentModMode(oPC))
|
||
|
{
|
||
|
case X2_CI_MODMODE_INVALID:
|
||
|
//
|
||
|
CISetCurrentModMode(oPC, MK_CI_MODMODE_CHARACTER);
|
||
|
MK_SaveCharacterDescription(oTarget);
|
||
|
// !!! no break !!!
|
||
|
case MK_CI_MODMODE_CHARACTER:
|
||
|
oItem = oTarget;
|
||
|
break;
|
||
|
}
|
||
|
|
||
|
int nAction = MK_GenericDialog_GetAction(TRUE);
|
||
|
switch (nAction)
|
||
|
{
|
||
|
case 22:
|
||
|
// restore original description
|
||
|
SetDescription(oItem, "");
|
||
|
// SetName(oItem, "");
|
||
|
break;
|
||
|
case 100:
|
||
|
// pressed OK in the 'edit box' -> get the description
|
||
|
{
|
||
|
string sText = MK_TrimString(GetLocalString(oPC, g_varEditorBuffer));
|
||
|
int bDisableColors = GetLocalInt(oPC, g_varEditorDisableColors);
|
||
|
if (bDisableColors)
|
||
|
{
|
||
|
// We don't want colors, so lets remove them.
|
||
|
// Just in case the user has used the chat line
|
||
|
// to enter color tokens.
|
||
|
sText = MK_RemoveColorTagsFromString(sText);
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
// We close all color tags in case the user has forgotten
|
||
|
// to do so.
|
||
|
sText = MK_CloseColorTags(sText);
|
||
|
}
|
||
|
SetDescription(oItem, sText);
|
||
|
// SetLocalString(oPC, "MK_NEWNAME", sText);
|
||
|
}
|
||
|
MK_Editor_CleanUp(oPC);
|
||
|
break;
|
||
|
case 101:
|
||
|
// pressed Cancel in the 'edit box'
|
||
|
MK_Editor_CleanUp(oPC);
|
||
|
break;
|
||
|
/* case 21:
|
||
|
// rename item
|
||
|
SetName(oItem, GetLocalString(oPC, "MK_NEWNAME"));
|
||
|
break;*/
|
||
|
}
|
||
|
|
||
|
MK_InitializeEditDescription(oPC, oItem);
|
||
|
|
||
|
// In case the editor gets started
|
||
|
int bUseChatEvent = GetLocalInt(oPC, "MK_EDITOR_USE_CHAT_EVENT");
|
||
|
MK_PrepareEditor(oPC, 2, 22, 23, "Edit description:", -1, FALSE, FALSE, bUseChatEvent);
|
||
|
|
||
|
// MK_GenericDialog_SetCondition(100, FALSE);
|
||
|
// MK_GenericDialog_SetCondition(101, TRUE);
|
||
|
// MK_GenericDialog_SetCondition(102, FALSE);
|
||
|
// MK_GenericDialog_SetCondition(103, FALSE);
|
||
|
|
||
|
MK_SetCustomTokenByItemTypeName(oTarget, oPC);
|
||
|
|
||
|
return TRUE;
|
||
|
}
|