Jump to content
  • Announcements

    • Xmat

      Pravidlo pro postování v TTT

      Do sekce Tipy, triky, tutoriály nepatří žádné dotazy.   Postujte sem vaše návody, tipy a různé další věci jež uznáte za vhodné sdělit zdejšímu osazenstvu, ale veškeré dotazy směřujte do sekce Všeobecná diskuse.
    • Replik

      Seznam návodů a důležitých témat v této sekci

      Pro lepší přehlednost jsem vytvořil tento seznam, který vás, méně zkušené, lépe provede touto sekcí. Věřím, že zde najdete, co hledáte. Vypsané jsou návody, které jsou oficiálně uznané jako návody. Běžné diskuze, které neposkytují postupy a rady zvěřejněny nejsou.   Instalace vlastního MaNGOS Serveru Díky těmto návodům budete (měli by jste být) schopni vytvořit a následně spustit váš vlastní server. Nastavení je pro verze s i bez datadisku.   Instalace MaNGOS Serveru (bez datadisku TBC) - Autor Benny Instalace MaNGOS Serveru (s datadiskem TBC) - Autor Malfik Instalace MaNGOS Serveru v prostředí Linux - Autor charlie Instalace MaNGOS Serveru v prostředí Linux - Autor kupkoid   Chyby a jejich řešení při přihlašování k serveru - Autor Cybe   Zálohování uživatelských dat   Dávkový soubor (BAT soubor) pro vytvoření SQL záloh - Autor Replik   Kompilování - tvoření vlastních release (revizí)   Tvorba kompilací pro Win32 (MangoScript) - Autor bLuma   Ostatní - těžko zařaditelné, ale neznamená to, že nejsou dobré   VIP Systém - Autor charlie Tvorba Webových stránek pro MaNGOS - Autor zahuba Tvorba teleportačních NPC (MangoScript) - Autor Replik Registrační web (původně předělaná SPORA) Funkční pro Antrix i MaNGOS - Autor Replik Nastavení a spuštění Minimanager pro MaNGOS - Autor BlackMartin Nastavení MaNGOS Website - Autor Artorius   Samozřejmě jsou zde i jiné návody, ale tyto jsou nejvíce používané, proto věřím, že vám budou nápomocné. Tuto sekci budeme upravovat podle potřeby. Pokud by jste něco nenašli nebo si nevěděli rady, hledejte na fóru a teprve potom založte vlastní topik. Pokud nějaký autor vytvoří kvalitní návod a chtěl by ho zveřejnit i v tomto seznamu, doporučuji, aby mi napsal zprávu skrze PM.   Díky a přeji hezký den na WoWResource   Replik
    • Aristo

      Příspěvky tam, kde nemají co dělat

      Dodržujte zákaz přispívání do topiků s repaky pokud si to zakladatelé nepřejí!! Opakované psaní příspěvků bude trestáno warnem.
    • Aristo

      Používání spoilerů

      Poslední dobou má většina uživatelů fora zvláštní nutkání postovat extrémně dlouhé texty nebo kódy, které zabírají v nejedenom případu i 80% obsahu celé stránky a hodně tak zvedají nepřehlednost v topiku. Chtěl bych všechny uživatele požádat, aby při postování citací, jakýchkoliv kódů, errorů, atp... delších než 30 řádků používali funkci spoileru.   Funkci vyvoláte příkazem [spoiler] text [/spoiler]   Ukázka:  
Sign in to follow this  
Replik

Návod pro vytvoření teleportační NPC

Recommended Posts

Ahoj lidi,

 

řekl jsem si, že by se vám (těm kteří neví, jak na to) hodilo umět vytvořit vlastní teleportační NPC, proto zde napíši poměrně snadný návod, jak takovou NPC udělat a jak já nadefinovat script. Upozorňuji, že tento návod lze použít pouze, pokud používáte MangoScript. Takže jdeme na to :)

 

1) Nejprve je nutné vytvořit vlastní sciprt, kde bude funkce pro NPC. Otevřete si poznámkový blok a vložte do něj:

 

-- Create the Mango Script Base object
My_Teleporter = Mango.Scripts.Create('my_teleporter_out');
My_Teleporter:ForceLUA(); -- Don't use the CPP version if valid

-- Function prototypes (to keep it clean)
local My_Teleporter_GossipHello
local My_Teleporter_GossipSelect

-- The actual functions
-- Send the first menu (with the selections)
function My_Teleporter_GossipHello(player,_Creature)

   
   player:ADD_GOSSIP_ITEM( 5, "Cestovat do Oultnads"       , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1)
   player:ADD_GOSSIP_ITEM( 5, "Cestovat do Stormwind City"       , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2)
   player:SEND_GOSSIP_MENU(1  ,_Creature:GetGUID()); -- Says " Greetings <Playername>

return RETURN_OK
end

-- Called when you chose an option
function My_Teleporter_GossipSelect(player, _Creature, sender, action)
   --Serving guard_stormwind/main menu
   if sender == GOSSIP_SENDER_MAIN then
   
     if action == GOSSIP_ACTION_INFO_DEF + 1 then
         -- teleport player to Outlands - Dark Portal
         player:TeleportTo(530, -248.16 , 922.349  , 85.3798 , 0, true, true, true );
     elseif action == GOSSIP_ACTION_INFO_DEF + 2 then
         -- teleport player to Stormwind City
         player:TeleportTo(0, -8913.23 , -554.633  , 94.7944 , 0, true, true, true );
     end
   end
return RETURN_OK
end

-- Assign the functions
My_Teleporter.GossipHello = My_Teleporter_GossipHello;
My_Teleporter.GossipSelect= My_Teleporter_GossipSelect;

-- Activate (run) the script
My_Teleporter:Activate();

 

V tomto textu upravte hodnoty na to, co potřebujete. Takže, pokud chcete upravit místa, kam bude NPC teleportovat, budete se zabývat tímto:

 

if action == GOSSIP_ACTION_INFO_DEF + 1 then
         -- teleport player to Outlands - Dark Portal
         player:TeleportTo(530, -248.16 , 922.349  , 85.3798 , 0, true, true, true );
     elseif action == GOSSIP_ACTION_INFO_DEF + 2 then
         -- teleport player to Stormwind City
         player:TeleportTo(0, -8913.23 , -554.633  , 94.7944 , 0, true, true, true );

 

Úprava je následující:

 

if action == GOSSIP_ACTION_INFO_DEF + 1 then
         -- teleport player to Outlands - Dark Portal
         player:TeleportTo(530, -248.16 , 922.349  , 85.3798 , 0, true, true, true );

 

Pokud bude vybrána možnost 1( if action == GOSSIP_ACTION_INFO_DEF + 1 then) , tak to hráče přenese na souřadnice ve formátu (mapa, x, y, z) 530, -248.16 , 922.349 , 85.3798

-- teleport player to Outlands - Dark Portal - tohle je jen informační popis pro toho, kdo bude se scriptem pracovat, aby věděl kam ty souřadnice vedou. Pokud bude vybrána možnost dvě, tak je postup obdobný.

 

Dále musíte upravit to, co bude NPC nabízet (to jediné, co hráč uvidí) a to je:

 

player:ADD_GOSSIP_ITEM( 5, "Cestovat do Oultnads"       , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1)
   player:ADD_GOSSIP_ITEM( 5, "Cestovat do Stormwind City"       , GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2)

 

Tady je vidět, že první řádek je možnost 1 a zobrazený text je "Cestovat do Outlands". Pokud změníte souřadnice, tak změníte i tento text na cílové misto přenosu.

 

A jako poslední je nutné mít upravený název scriptu. Je to skoro na začátku.

My_Teleporter = Mango.Scripts.Create('my_teleporter_out');

 

Tato hodnota (my_teleporter_out) bude poté zapsána v tabulce creature_template ve sloupci SciprtName.

 

Celý soubor uložte například jako npc_teleport_out_storm.lua do složky custom, která je umístěna ve složce MangoScript. Nezapomeňte změnit typ souborů na "Všechny soubory", protože jinak by vám z toho vznikl npc_teleport_out_storm.lua.txt a to nechceme.

 

Tímto jste zdárně dokončili tvorbu vašeho scriptu. Ještě ale musíte provést jeho načtení do serveru. Tedy, zapsat ho do Masterscript.lua.

 

2. Úprava Masterscript.lua

 

Nejprve se ujistěte, že máte povoleno načítání volitelných (custom) prvků. To zjistíte skoro na začátku souboru.

-- ************************************************
-- OPTION TO ENABLE OR DISSABLE EXTRA SCRITPS HERE*
-- ************************************************
local useCustoms = true; -- set this to true to enable too MangoScript custom extras
-- ************************************************

 

Pokud tomu tak je, je vše v pořádku, pokud tam máte hodnotu false, tak ji přepište na true. Nyní ještě přidáte řádek, který zahrne váš script do načítání. Vyhledejte tedy záznam

-- Custom Scripts
if useCustoms == true then

a pod něj přidejte řádek, který bude obsahovat cestu k vašemu scriptu. Například to bude vypadat takto:

include ('MangoScript/custom/npc_teleport_out_storm.lua')          -- Teleportscript do Outlands a Stormwindu

 

Vše uložte. Tímto jste ukončili tvorbu scriptů.

 

3. Tvorba NPC v tabulce creature_template

 

Můžete ji nadefinovat bud ručně nebo použít tento příkaz

 

INSERT INTO `creature_template` VALUES ('3000004', '6778', '0', 'Transportation Master', 'Outlands - Stormwind', '65', '65', '4667', '4667', '0', '0', '0', '1', '65', '1', '0', '347', '489', '100', '1430', '1573', '0', '0', '1', '1', '0', '2', '0', '0', '0', '70', '96', '100', '2.31', '7', '0', '0', '22178', '0', '0', '285346306', '0', '0', '3', '4', '0', '68', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '690', '690', '', '0', '3', 'my_teleporter_out');

 

Nyní stačí už npc jen umístit na vhodnou pozici. Umí portovat oběma směry, takže lze použít na obou místech.

 

Doufám, že vše proběhlo dobře a že jsem na nic nezapomněl.

 

Enjoy ;)

Edited by Replik

Share this post


Link to post
Share on other sites

Pekny navod.. jediny blby je na tom ze to je v mangoscriptu.

 

Edit : sry.. lagnul me net

Edited by charlie

Share this post


Link to post
Share on other sites
Pekny navod.. jediny blby je na tom ze to je v mangoscriptu.

 

Edit : sry.. lagnul me net

 

V pohodě .. Můžu něco podobného zkusit i na SciprtDev ;)

Share this post


Link to post
Share on other sites
mno kdyby se to povedlo bylo by to super.

Jj presne mel jsem MangoScript ale lepsi je ScriptDev tak pls vykutte to aji na ScriptDev jo a na MangoScriptu to jel takze good Work!!!!

 

Share this post


Link to post
Share on other sites

Vytvořeni portéři do hl. měst.

http://www.edisk.cz/stahnout-soubor/37168/Porteri-do-mest.rar_2.81KB.html

 

Jestli se vám to hodí, tak berte a zkoušejte. :whistling:

Share this post


Link to post
Share on other sites
Vytvořeni portéři do hl. měst.

http://www.edisk.cz/stahnout-soubor/37168/Porteri-do-mest.rar_2.81KB.html

 

Jestli se vám to hodí, tak berte a zkoušejte. :whistling:

dik moc ;) jdu to TESTnout

btw Repliku kolik lidi ti hraje na tom tvem serveru?

Share this post


Link to post
Share on other sites
dik moc ;) jdu to TESTnout

btw Repliku kolik lidi ti hraje na tom tvem serveru?

Máme slabou lajnu, takže málo, takže teď řešíme server housing a hosting .. Není to jako dřív za starého dobrého Repliosu ... Nastaly problémy... jukni se na

http://www.replios.com/index.php?group=navigation&content=about%20us

jestli chceš.

Edited by Replik

Share this post


Link to post
Share on other sites
mno kdyby se to povedlo bylo by to super.

 

Řeknu tim že u toho ScriptDev si zatím nevím rady :( A docela mě to štve ... V cpp souborech to je tvořeno trochu jinak. Ještě si s tím budu trochu hrát :)

Share this post


Link to post
Share on other sites
jakou pouzivas revizi a patch?

 

 

Ja mám 2.3.2 ale ten link na SD2 nefunguje. Tak se ptám kde to seženu pls. Předem díky

Edited by Coyote

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×