Jeśli taki temat jest to sorr ale nie zauważyłem. Zrobiłem npc'a o imieniu Wiechu
instance NONE_120_Wiechu (Npc_Default) // Postać stworzył Petitek
{
// ------ NPC ------
name = "Wiechu";
guild = GIL_NONE;
id = 120;
voice = 5;
flags = 0;
npctype = NPCTYPE_MAIN;
// ------ Atrybuty ------
B_SetAttributesToChapter (self, 1);
// ------ Taktyka Walki ------
fight_tactic = FAI_HUMAN_STRONG; // MASTER / STRONG / NORMAL / COWARD
// ------ Nałożona broń ------
EquipItem (self, ItMw_1h_Bau_Axe);
// ------ Inwentarz ------
// Händler
// ------ Wygląd ------
B_SetNpcVisual (self, MALE, "Hum_Head_Pony", Face_N_NormalBart_Dexter, BodyTex_N, ITAR_VLK_M);
Mdl_SetModelFatness (self, 0);
Mdl_ApplyOverlayMds (self, "Humans_Relaxed.mds"); // Mage / Militia / Tired
// Relaxed / Arrogance
// --Istotne talenty NPCa (dziwne to to :P)--
B_GiveNpcTalents (self);
// ------ Talent walki ------
B_SetFightSkills (self, 45);
// ------ Rutyna ------
daily_routine = Rtn_Start_120;
};
FUNC VOID Rtn_Start_120 ()
{
TA_Stand_Eating (07,00,21,00,"KONIK");
TA_Stand_ArmsCrossed (21,00,07,00,"KONIK");
};
i dialog do niego
//*********************************************************************
// Info EXIT
//*********************************************************************
INSTANCE DIA_Wiechu_EXIT (C_INFO)
{
npc = NONE_120_Wiechu;
nr = 999;
condition = DIA_Wiechu_EXIT_Condition;
information = DIA_Wiechu_EXIT_Info;
permanent = TRUE;
description = DIALOG_ENDE;
};
FUNC INT DIA_Wiechu_EXIT_Condition()
{
return TRUE;
};
FUNC VOID DIA_Wiechu_EXIT_Info()
{
AI_StopProcessInfos (self);
};
//*********************************************************************
// Info Hello
//*********************************************************************
INSTANCE DIA_Wiechu_siema (C_INFO)
{
npc = NONE_120_Wiechu;
nr = 1;
condition = DIA_Wiechu_siema_Condition;
information = DIA_Wiechu_siema_Info;
permanent = FALSE;
description = "Co słychać?";
};
FUNC INT DIA_Wiechu_siema_Condition()
{
return TRUE;
};
FUNC VOID DIA_Wiechu_siema_Info()
{
AI_Output (other,self ,"DIA_Wiechu_siema_15_00"); //Co słychać?
AI_Output (self ,other,"DIA_Wiechu_siema_55_01"); //Ahhh... Mogło być lepiej...
AI_Output (other,self ,"DIA_Wiechu_siema_15_02"); //Co masz na myśli?
AI_Output (self ,other,"DIA_Wiechu_siema_55_03"); //Kiedy tu przyjechałem, myślałem, że będzie więcej kupujących. Do miasta nie chcą mnie wpuścić, a w mieście są kupujący... Tu nie!
};
//*********************************************************************
// Sprzedajesz?
//*********************************************************************
INSTANCE DIA_Wiechu_sprzedasz (C_INFO)
{
npc = NONE_120_Wiechu;
nr = 1;
condition = DIA_Wiechu_sprzedasz_Condition;
information = DIA_Wiechu_sprzedasz_Info;
permanent = FALSE;
description = "A więc masz towar?";
};
FUNC INT DIA_Wiechu_sprzedasz_Condition()
{
if (npc_knowsinfo (other, DIA_Wiechu_siema))
{
return TRUE;
};
};
FUNC VOID DIA_Wiechu_sprzedasz_Info()
{
AI_Output (other,self ,"DIA_Wiechu_sprzedasz_15_00"); //A więc masz towar?
AI_Output (self ,other,"DIA_Wiechu_sprzedasz_55_01"); //Oczywiście. Mogę ci zaproponować broń. Niestety wybór jest niewielki.
AI_Output (self ,other,"DIA_Wiechu_sprzedasz_55_02"); //Gdybyś coś kupił, byłbym tobie wdzięczny.
Log_CreateTopic (Topic_Handuś, LOG_NOTE);
B_LogEntry (Topic_Handuś, "Wiechu sprzedaje broń przed miastem");
};
//*********************************************************************
// Pokaż mi swoje towary
//*********************************************************************
INSTANCE DIA_Wiechu_kup (C_INFO)
{
npc = NONE_120_Wiechu;
nr = 1;
condition = DIA_Wiechu_kup_Condition;
information = DIA_Wiechu_kup_Info;
permanent = TRUE;
description = "Pokaż mi swoje towary";
};
FUNC INT DIA_Wiechu_kup_Condition()
{
if (npc_knowsinfo (other, DIA_Wiechu_sprzedasz))
{
return TRUE;
};
};
FUNC VOID DIA_Wiechu_kup_Info()
{
B_GiveTradeInv (self);
AI_Output (other,self ,"DIA_Wiechu_kup_15_00"); //Pokaż mi swoje towary
};
w LOG_Constants_Notes dopisałem
const string Topic_Handuś = "Handel";
i stworzyłem plik B_GiveTradeInv_Wiechu
var int Wiechu_ItemsGiven_Chapter_1;
var int Wiechu_ItemsGiven_Chapter_2;
var int Wiechu_ItemsGiven_Chapter_3;
var int Wiechu_ItemsGiven_Chapter_4;
var int Wiechu_ItemsGiven_Chapter_5;
FUNC VOID B_GiveTradeInv_Wiechu (var C_NPC slf)
{
if ((Kapitel >= 1)
&& (Wiechu_ItemsGiven_Chapter_1 == FALSE))
{
CreateInvItems (slf, ItMi_Gold, 100);
// ------ Waffen ------
CreateInvItems (slf, ItMw_ShortSword3, 1);
CreateInvItems (slf, ItMw_ShortSword4 , 1);
CreateInvItems (slf, ItMw_Richtstab, 1);
CreateInvItems (slf, ItMw_Schwert3, 1);
CreateInvItems (slf, ItMw_Streitkolben, 1);
CreateInvItems (slf, ItMw_Schiffsaxt, 1);
CreateInvItems (slf, ItMiSwordraw, 5);
CreateInvItems (slf, ItMw_Schlachtaxt, 1);
// ------ Ringe / Amulette ------
CreateInvItems (slf, ItBE_Addon_Leather_01, 1);
CreateInvItems (slf, ItBE_Addon_MIL_01 , 1);
CreateInvItems (slf, ItAm_Prot_Edge_01 , 1);
Wiechu_ItemsGiven_Chapter_1 = TRUE;
};
if ((Kapitel >= 2)
&& (Wiechu_ItemsGiven_Chapter_2 == FALSE))
{
CreateInvItems (slf, ItMi_Gold, 100);
CreateInvItems (slf, ItMiSwordraw, 5);
Wiechu_ItemsGiven_Chapter_2 = TRUE;
};
if ((Kapitel >= 3)
&& (Wiechu_ItemsGiven_Chapter_3 == FALSE))
{
CreateInvItems (slf, ItMw_Steinbrecher , 1);
CreateInvItems (slf, ItMw_Doppelaxt, 2);
CreateInvItems (slf, ItMw_Streitkolben, 1);
CreateInvItems (slf, ItMw_Orkschlaechter , 2);
CreateInvItems (slf, ItMi_Gold, 100);
CreateInvItems (slf, ItMiSwordraw, 5);
CreateInvItems (slf, ItBe_Addon_Prot_Point, 1);
Wiechu_ItemsGiven_Chapter_3 = TRUE;
};
if ((Kapitel >= 4)
&& (Wiechu_ItemsGiven_Chapter_4 == FALSE))
{
CreateInvItems (slf, ItMi_Gold, 150);
CreateInvItems (slf, ItMiSwordraw, 5);
CreateInvItems (slf, ItBe_Addon_Prot_EDGE, 1);
CreateInvItems (slf, ItBe_Addon_Prot_TOTAL, 1);
Wiechu_ItemsGiven_Chapter_4 = TRUE;
};
if ((Kapitel >= 5)
&& (Wiechu_ItemsGiven_Chapter_5 == FALSE))
{
CreateInvItems (slf, ItMi_Gold, 200);
CreateInvItems (slf, ItMiSwordraw, 5);
Wiechu_ItemsGiven_Chapter_5 = TRUE;
};
};
kompilowanie skryptów pokazuje wszystko bez błędu, w grze klikam "Pokaż mi swoje towary" i okienka z towarami nie ma :( POMOCY
Plis niech ktoś napisze jak to sie robi
EDIT: Temat do zamknięcia (lub usunięcia)