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  
Broskev

Broskvoňovo začátky s úpravou CORE aneb I need help!

Recommended Posts

cus, sem budu postovat vše, co se snažím v core udělat a nejde mi :D

chci udělat, po despawnu - lootu chest, aby se tam spawnula menší chest...viz

if(!isSpawned() && GetDBTableGUIDLow()=17082)
Create(999999,211051,0, 1, -1198.8, -1635.07, 48.606, 2.26704, 0, 0, 0.905908, 0.423475, 0,1);

a celý Gameobject.cpp:

http://paste2.org/p/853892

vpohodě to zkompiluje, jen mám blbě toto, díkes for help a btw nenadávejte mi tu a neříkejte, že se mám napřed učit C++ dík moc :)

Share this post


Link to post
Share on other sites

jj zkusím to, jsem tam zapomněl jedno rovná se..vím že když dám jedno, tak naplňuji funkci a když dvě tak jestli se to rovná

hm stejně to nefachá :(

Edited by Broskev

Share this post


Link to post
Share on other sites

Problém je v tom, že kód je blbost. RemoveFromWorld se volá, až když je objekt úplně odebrán ze světa, což se v případě normální gob, který je spawnut v mapě, nestane, ten se pouze stane neviditelným, dokud se nerespawne. A za druhé metoda Create neslouží k vytvoření nového objektu, ale k inicializaci současného. Takže jsi se vlastně pokusil přepsat stávající gob něčím jiným. Navíc jsi stejně nedodržel požadované parametry a bez platného ukazatele Map* by ti to akorát vyhodilo assertion fail a spadl ti mangos.

  • Upvote 1

Share this post


Link to post
Share on other sites

ano celkem divím.....

a víš co, nechceš pomoct, tak si běž offtopicovat do jinýho topicu, který není ode mě

Edited by Broskev
  • Upvote 1

Share this post


Link to post
Share on other sites

ano celkem divím.....

a víš co, nechceš pomoct, tak si běž offtopicovat do jinýho topicu, který není ode mě

 

A kdo ti pomáhal na ICQ, když si v tom měl bordel? Přemejšlej.. :) Když jsem odmítnul na tvým projektu spolupracovat, nikdy by mě nenapadlo, že to budeš brát tolik osobně. ;)

 

Samozdřejmě ti rád poradím, ale přestaň na mě bejt pořát naAgroovanej. Okay? :lol: To přeci nikam nevede. Docela bych stál o cennou informaci ohledně tvojí revize. Tak na jaký revizi to máš? :blink:

 

jestli jsem to správně pochopil, snažíš se o to, aby se po vyprázdnění lootu truhly despawnula tato a místo ní aby se dočasně spawnula jiná, menší. Okay? Možná by to nutně nemuselo bejt v core, snad by stačil SD2 script. Pokusím se něco splodit, dej mi čas. <_<

  • Upvote 1

Share this post


Link to post
Share on other sites

hm vielen dank, ale já nepotřebuju to udělat, já bych spíš potřeboval poradit jak na to..celkově to potřebuji pochopit, abych tu později nemusel otravovat.... tu knížku od tebe jsem si přečetl...ale stejně většimnu věcí... v mangosu nechápu

a to jáak se vůči tobě chovám vůbec není kvůli tomu, že jsi odmítl k nám jít, ale kvůli tomu, jak na mě furt nadáváš a buzeruješ

Edited by Broskev

Share this post


Link to post
Share on other sites

Pokud je to jak napsal wolf, tak se jedná o jednorázový script, nic v podstatě do core, stačí jen sd2 script, je blbost zasahovat s něčím tak nedůležitým přímo do hlavních částí serveru ..

Share this post


Link to post
Share on other sites

ano, asi to bude SD2, ale já vůbec nechápu SD2 ... to si mám dát includehlavičku třebas player.h když je v ní ta funkce co potřebuji ? a btw jak se dělá timer ?

Share this post


Link to post
Share on other sites

ano, asi to bude SD2, ale já vůbec nechápu SD2 ... to si mám dát includehlavičku třebas player.h když je v ní ta funkce co potřebuji ? a btw jak se dělá timer ?

 

  • Koukni na příkladový scripty (exaples). Dál třeba některý scripty instancí mohou mít to co hledáš. Podle mě je to jednodušší než se hrabat přímo v core. ;)
  • Timer? Jak to myslíš? :D
  • Jakou že to máš teda tu revizi? :ermm:
  • Buzerace není rejpání.. :unsure: ..A já rád rejpu.. :pokey: ..znáš mě. :teehee:

Share this post


Link to post
Share on other sites

Mám už něco rozdělanýho, ale je to celý blbě.. Už jsem hrozně uvanej a je to hrozný.. Celý je to špatně.. ..ikdyž kompilace probíchá v klidu, fungovat to ještě nebude. Zítra (vlastně už dnes, ale později :)) udělám snad už i ten timer. ;) Ale všechno má svuj čas, nejdřím to musí fungovat..

 

http://pastebin.com/WzeVBR7e

 

/**********************
* WLK WLEZLEY (c)2010 *
***********************

BuildFor:		MaNGOS 9799 core
FileName:		multi_chest.cpp
SDName:			multi_chest
SD%Complete:	
SDComment:		
SDCategory:		Custom
*/

#include "precompiled.h"

bool GOtest(Player* pPlayer, GameObject* pGo)
{
GameObject* pGoParez;
//pGoParez->
int32 guid = 999999;
   float x, y, z, ang, rot0, rot1, rot2, rot3;
   x = pGo->GetPositionX();
   y = pGo->GetPositionY();
   z = pGo->GetPositionZ();
ang = 0.0f;
rot0 = pGo->GetFloatValue(GAMEOBJECT_PARENTROTATION+0);
rot1 = pGo->GetFloatValue(GAMEOBJECT_PARENTROTATION+1);
rot2 = pGo->GetFloatValue(GAMEOBJECT_PARENTROTATION+2);
rot3 = pGo->GetFloatValue(GAMEOBJECT_PARENTROTATION+3);
Map* mapid = pGo->GetMap();


if(pGo->getLootState() == GO_NOT_READY)
{
	pGoParez->Create(pGo->GetGUIDLow(), 999999, mapid, 1, x, y, z, ang, rot0, rot1, rot2, rot3, 0, GO_STATE_ACTIVE);
}
return true;
}

void AddSC_multi_chest()
{
   Script* newscript;

   newscript = new Script;
   newscript->Name = "multi_chest";
   newscript->pGOHello = &GOtest;
   newscript->RegisterSelf();
}

 

 

EDIT: Je v tom ale pěknej bordel, co? :D

Edited by Wolf Officious

Share this post


Link to post
Share on other sites

cus, sem budu postovat vše, co se snažím v core udělat a nejde mi :D

chci udělat, po despawnu - lootu chest, aby se tam spawnula menší chest...viz

if(!isSpawned() && GetDBTableGUIDLow()=17082)
Create(999999,211051,0, 1, -1198.8, -1635.07, 48.606, 2.26704, 0, 0, 0.905908, 0.423475, 0,1);

a celý Gameobject.cpp:

http://paste2.org/p/853892

vpohodě to zkompiluje, jen mám blbě toto, díkes for help a btw nenadávejte mi tu a neříkejte, že se mám napřed učit C++ dík moc :)

Co kdybys to vyzkoušel takhle?:

if(!isSpawned() && GetDBTableGUIDLow() == 17082)
Create(999999, 211051, 0, 1, -1198.8f, -1635.07f, 48.606f, 2.26704f, 0.0f, 0.0f, 0.905908f, 0.423475f, 0, 1);

 

..protože ty hodnoty mají být float..

 

..ale stejně bys to musel ještě nějak odstraňovat..

 

Ten script jsem zahodil, začínám skoro znova:

 

/**********************
* WLK WLEZLEY (c)2010 *
***********************

BuildFor:		MaNGOS 9799 core
FileName:		multi_chest.cpp
SDName:			multi_chest
SD%Complete:	
SDComment:		
SDCategory:		Custom
*/

#include "precompiled.h"

enum  // `gameobject_template` entry
{
TREE_STUMP = 998870,    // Parez
TREE_ONE   = 998871,    // Strom 1
TREE_TWO   = 998872,    // Strom 2
TREE_THREE = 998873,    // Strom 3
TREE_FOUR  = 998874	    // Strom 4
};

bool GOtest(Player* pPlayer, GameObject* pGo)
{
uint32 gobphmod = 0;

if(pGo->getLootState() == GO_NOT_READY)
{
	switch(pGo->GetEntry())		// MEGA-BLBOST!!!
	{
		case TREE_ONE:
			gobphmod = TREE_ONE;
			break;
		case TREE_TWO:
			gobphmod = TREE_TWO;
			break;
		case TREE_THREE:
			gobphmod = TREE_THREE;
			break;
		case TREE_FOUR:
			gobphmod = TREE_FOUR;
			break;
	}
}

if(gobphmod)
{
	pGo->SetPhaseMask(2, true);
}

return false;
}

void AddSC_multi_chest()
{
Script* newscript;

newscript = new Script;
newscript->Name = "multi_chest";
newscript->pGOHello = &GOtest;
newscript->RegisterSelf();
}

 

 

EDIT: Dneska to už dodělávat nebudu, kouknu na to jindy.. Povedlo se mi měnit phase, to jo, ale potřebuju nějak naplnit struktu datama jinýho game objectu.. Na tom jsem se zaseknul.

Edited by Wolf Officious

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

×