Informacion de gracias

Show post that are related to the Thank-O-Matic. It will show the messages where you become a Thank You from an other users.


Messages - xampoulis

@firemarcos me podrías explicar cómo editar el main ? Todo enciende bien , tuve un problema con el joinserver pero probé con unas obdc que venían en unos files mu emu s6 y inicio todo correctamente.
El problema es que no pasa de el antihack porque supuestamente no hay conexión con el servidor pero tengo todo correctamente configurado, puertos y firewall desactivado porque ya he probado otros files pero no se si estoy configurando mal los archivos del main.
Empezando que los files vienen con un data para el cliente y supongo que debo agregarlo al cliente y de resto lo configure como se configura el main de cualquier otro cliente mu emu, me podrían explicar paso a paso de cómo configurar el main por si depronto estoy haciendo algo incorrectamente.  Please !!
Gracias


Gracias:

//ChangeLog MuEmu by louis
//Muserver Season 4,6,8

JANUARY 2017
- Add CustomMove
- Add Rei do MU Event
- Fix CustomJewel in Main
- Active MHP

FEBRUARY 2017
- Add HpBonus System
- Add Kill Message System
- Add MessageBox Yes/No on Close Gameserver
- Add MasterSkillTree Reset
- Fix Duel DC (s8)
- Fix Pentagram jewel(remove before put in ware) (s8)

MARCH 2017
- Fix Duel Trade (s8)
- Add Main Memory reduction
- Add Guard CustomMessage
- Add Colunn Score_semanal in RankingDevilSquare
- Add Colunn Score_semanal in RankingBloodCastle
- Add Colunn Score_semanal in RankingChaos Castle
- Add Colunn Score_semanal in RankingIllusionTemple
- Add Colunn WinScore_semanal in RankingDuel
- Add in DataServer update semanal colls

APRIL 2017
- Add BotBuffer System
- Add SD/HD bar in Character (S4/S6)
- Add Command Clear Inventory
- Active Encrypt in Client/Server.
- Fix Friend Message Title Inject (DataServer)

MAY 2017
- Add OpenWare Command
- Add SetVip Command
- Add Marry System
- Change HP/SD Bar Interface
- Fix BotBuffer Power
- Fix Store Dupe
- Fix Duel MinLevel

JUNE 2017
- Add Reload Command
- Add Reward Command
- Add ChangeClass Command
- Add OnlineLottery Event
- Add Disconnect User in GameServer Menu
- Add Start OnlineLoterry GameServer Menu
- Add OffStore and OffAttack count in GameServer Title Bar

JULY 2017 UPDATE 2
- Add Itens Level +15 (Season 4)
- Add Info Command
- Add Change Name Command
- Add BanAcc Command
- Add BanChar Command
- Add DynamicEffect in Main (S4/S6/S8)
- Add Max Use Time in Attack command
- Add Option to disable Online User/GM Message
- Add Event Hide and Seek
- Add Event Run and Catch
- Add option to disable exp message on kill mob
- Change MaxCustom Wings to 100
- Fix Money remove when use ResetTable system.
- Fix Socket jewel aplly in no socket item
- Fix CustomEffect problems in Main.dll
- Fix remove BC,DS,IT invite
- Fix Skill elf on /attack
- Fix Clear Effects on change class
- Fix /store bless Crash (Season 6)
- Add Custom Summon on Kill Mob
- Evento Veloz
- /openevent /join
- Disable/Enable Skill Effect (Ex:Cyclone)
- Add Custom exp on Offattack and Autoreset

AUGUST 2017 UPDATE 3
- Add MakeSet Command
- Add Drop Command
- Option to Remove Offstore/offattack in OnlineLottery
- Jewel of socket Aply in pentagram (Season8)
- ADD gift command
- Add Custom Quest System
- Add Russian Roulette Event
- Add Max Use Time in Store command
- New King of Mu Event
- Add Reward Coins in BC,DS,CC
- add /toprr /topmr etc
- Somente gm fazer o casamento
- Disable Wing Mix Class

SEPTEMBER 2017 UPDATE 4
- Remove Class in Main (RF,SU,DL)
- Custom Auto Quiz Event
- Need ticket to change name Option (S6/S8)
- Custom WingMix (Chaos Mix)
- Custom Death Message
- Custom Npc Collector (trade items per Coins)
- Readd point command
- Advanced Make itens (/make, /drop, /makeset)
- Custom Rank User System (S4,S6)
- Disable HP Bar of Monster or User Option
- Updated JoinServer to fix dupes
- Allow Pk enter in events (BC,CC,DS)



Credits
MuEmu
louis
X-team

Gracias:

pimkungclub, Vengefull, tomatoman, tavuong777, xogunox, bzcandy, ashlay, myloveax, Zeus, ezesosa, laulinh2, diieg0, xuanthanhyt, wenvill, Na1koN, str1ker, Pablo Gutierrez, ractor100, DaoVanTrong, marco12, Ruby-Project, arbas, darkjano, skyddr8511, SilverLife, repiolaa, Junior999, Crowley, kenny666, lostcross, copixx, dainam, juanse23, dendi, inax123, idpnguyeni, Mr.HChaos888, pujosx, AreS, wesleypam, Ryuno, hsowaty, xeneises, Vanechka, saske98, duccom0123, karita, Wendigo, KhongGianOL, Marote, kimbao17, pkdomal, aof10022535, nhoanhkhoquen, KundunMu, AriesM@ster, vaneavanea31, Tester1838a, Saitama, Cheke, morge, SetecSoft, s00x, onlinezajzaj, marcelin, k12leito, mechaloco, talisson, GX_KYO, Pudge, diemorko, cruskado, vdragon1, chuckhai, xBebo1994x, mario2015, marianoherrero95, LionRooT, GabrielDev, Dariox84, BUTTMAN, mixuer, InnovateMu, jhonhy, 1732313, phcaraujo, exoduz, judakiss21, tieugiao, tosento, jammils, harry130, thomasexpert, muenforce, krak123, Bruno3D, Dhanielt, targaryen, FaNaMaN, 1muarcadia1, jotmaster, YolaxD, dropitem, leonardoxd, Malyk, pavon7, GabrielDevel, Mr-K, kahleb, norean, 4RM4G3D0N, FreeStyle, LuisXD, jhnjohnny, SpectruM, .:DragonSeth:., MrSoftware, system369, pquintal, KAOZ, arconde, nujd00, theexpo2, Gunnar, galaxys7, lucas, Almdar, yunnior12, rando, focked, AndrisMtz, GATITO, leal891, Yan Carlos, Keko, yNot, roma, Skiner, humito, POPEY, felix, ruankennedy, adinhaa, ELEKTRONEX, samsunggon, pepeeh, edgardanis, bloodvalhalla, alexytoo, SargentoLuiz, pclcaetano, xiox, peck66, Ashita111235, Hax.Gaming, scfmt, jonhz, Deidad, martinmaya, RAIKON, marvisur, juan1997, beecubin, darklateg, cesar, skarious, thorin, ljusalfheim, ByFredy, TroYaN, alexo, shakboi, lokoes321, corbi123, lkt22, c4nhsatcodong, cobyzero06, roshux, jumongski, xCyb3r94x, CorsarioDgx, neverclubza, LanzSystem, xNymer, erickmalfoy, Pokepili, wanwaycom, Ryukendo, Aisu, ritter_sk1, nguoirung, Joseleao, bazofiamen, agtanalata, JORDEL, 183358, elmalexs, JluCeHoK, jhones001, DaiveSN, darkenix, tharlion, Skillz, majoca10, Hatting, thienthan1117, socolas, TheAliensDJ, TheBlood, RoldanHost, webmonkey, psalazar, Ethernaly, malke, TheKing027, IzReal, PhantomKr, zehel62, accountdev, remamakiller, tonesn, anduyx1, washingtonlock, fabrixd, ethondev, slow, srdiegobr, TheHerous, NoobDK, conter, datos32, dreamboy7, xdjoa, knight.php, stalintlv, Yalc, ediiinson, jesusb, lokura, lorade, arnaldo751, Yair1414, flywee, beibei, lacovic, kksky, fedrock, InFamous, nahhzinho, ImportedPotato, ltpteam, felksyahh, dio, herjuni, lolis, draco425, neicer, Jean LR, DjGamer, Natzugen, prano, caron22, forlifeza, gauyeutho, rescate02, Blade, beokute96, jeffzkie69, seedmaker, zodiacddos, dmgbuscador, mastermcy, boyzinho, datcom, darkroh, RTDEV, 日メリーのRu, Lzvick, adicales, fakeuser, deathsquad, leonardexapps, 0800-cachorro, pravednik, conchetumare, nxx, CAPITOL, TioFedEx, ajmeireles, sebasthyan97, PachoRasta, gpsturbo, Zultabra, muarce, Nexus, higlans, blakelee1208, Kapocha33, thunwa1, JonathanRm, daweda, lolito, firemarcos, rogeralexander, splound, d3mon, eperke, JoJoGy, n0tee, mustx1, xpam, fabilus, tammadall, 161012, jonasg, esteban, ZabiinoOo, dreams, sagat202, Anonimus01, quyanxu, jprey7, louis, cri0, INFIERNO, sombe30, feins150, maychell
Tengo la fuente louis update 4 :) Lo donaré al foro free ;)

Gracias:

cuanto sale la version premium ?

podrias agregarle esta noticas al conectserver y cliente para que cuando la gente entre le podamos
dejar una noticia ...ademas queda alegante



y agregarle esto cuando apuntas un monster



link website mu umprella ?

Gracias:

GameServer


#define  MAX_CUSTOM_WING 100

Procurar no Item.cpp

Citar
__declspec(naked) void WingMakePreviewCharSet() // OK
{
   static DWORD WingMakePreviewCharSetAddress1 = 0x004F71DE;
   static DWORD WingMakePreviewCharSetAddress2 = 0x004F717D;

   _asm
   {
      Mov Ecx,Dword Ptr Ss:[Ebp+0x0C]
      Movzx Edx,Byte Ptr Ds:[Ecx+0x10]
      Sar Edx,0x01
      And Edx,0xFF
      Test Edx,Edx
      Je EXIT
      Mov Eax,Dword Ptr Ss:[Ebp+0x0C]
      Movzx Ecx,Byte Ptr Ds:[Eax+0x10]
      Sar Ecx,0x01
      And Ecx,0xFF
      Sub Ecx,0x01
      Push Ecx
      Lea Ecx,gCustomWing
      Call [CCustomWing::CheckCustomWing]
      Test Eax,Eax
      Je EXIT
      Mov Edx,Dword Ptr Ss:[Ebp+0x0C]
      Movzx Eax,Byte Ptr Ds:[Edx+0x10]
      Sar Eax,0x01
      And Eax,0xFF
      Sub Eax,0x01
      Push Eax
      Lea Ecx,gCustomWing
      Call [CCustomWing::GetCustomWingItem]
      Add Eax,ITEM_BASE_MODEL
      Mov Ecx,Dword Ptr Ss:[Ebp-0x08]
      Mov Word Ptr Ds:[Ecx+0x1C0],Ax
      Jmp [WingMakePreviewCharSetAddress1]
      EXIT:
      Mov Eax,Dword Ptr Ss:[Ebp-0x04]
      And Eax,0xFF
      Jmp [WingMakePreviewCharSetAddress2]
   }
}





CustomWing.h


Code: [Select]
// CustomWing.h: interface for the CCustomWing class.
//
//////////////////////////////////////////////////////////////////////

#pragma once

[URL=http://perfectzone.com.br/usertag.php?do=list&action=hash&hash=define]#define[/URL]  MAX_CUSTOM_WING 100

struct CUSTOM_WING_INFO
{
int Index;
int ItemIndex;
int DefenseConstA;
int IncDamageConstA;
int IncDamageConstB;
int DecDamageConstA;
int DecDamageConstB;
int OptionIndex1;
int OptionValue1;
int OptionIndex2;
int OptionValue2;
int OptionIndex3;
int OptionValue3;
int NewOptionIndex1;
int NewOptionValue1;
int NewOptionIndex2;
int NewOptionValue2;
int NewOptionIndex3;
int NewOptionValue3;
int NewOptionIndex4;
int NewOptionValue4;
int ModelType;
char ModelName[32];
};

class CCustomWing
{
public:
CCustomWing();
virtual ~CCustomWing();
void Init();
void Load(char* path);
void SetInfo(CUSTOM_WING_INFO info);
CUSTOM_WING_INFO* GetInfo(int index);
CUSTOM_WING_INFO* GetInfoByItem(int ItemIndex);
bool CheckCustomWing(int index);
bool CheckCustomWingByItem(int ItemIndex);
int GetCustomWingIndex(int ItemIndex);
int GetCustomWingDefense(int ItemIndex,int ItemLevel);
int GetCustomWingIncDamage(int ItemIndex,int ItemLevel);
int GetCustomWingDecDamage(int ItemIndex,int ItemLevel);
int GetCustomWingOptionIndex(int ItemIndex,int OptionNumber);
int GetCustomWingOptionValue(int ItemIndex,int OptionNumber);
int GetCustomWingNewOptionIndex(int ItemIndex,int OptionNumber);
int GetCustomWingNewOptionValue(int ItemIndex,int OptionNumber);
public:
CUSTOM_WING_INFO m_CustomWingInfo[MAX_CUSTOM_WING];
};

extern CCustomWing gCustomWing;

CustomWing.cpp

Code: [Select]
// CustomWing.cpp: implementation of the CCustomWing class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "CustomWing.h"
#include "MemScript.h"
#include "Util.h"

CCustomWing gCustomWing;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CCustomWing::CCustomWing() // OK
{
this->Init();
}

CCustomWing::~CCustomWing() // OK
{

}

void CCustomWing::Init() // OK
{
for(int n=0;n < MAX_CUSTOM_WING;n++)
{
this->m_CustomWingInfo[n].Index = -1;
}
}

void CCustomWing::Load(char* path) // OK
{
CMemScript* lpMemScript = new CMemScript;

if(lpMemScript == 0)
{
ErrorMessageBox(MEM_SCRIPT_ALLOC_ERROR,path);
return;
}

if(lpMemScript->SetBuffer(path) == 0)
{
ErrorMessageBox(lpMemScript->GetLastError());
delete lpMemScript;
return;
}

this->Init();

try
{
while(true)
{
if(lpMemScript->GetToken() == TOKEN_END)
{
break;
}

if(strcmp("end",lpMemScript->GetString()) == 0)
{
break;
}

CUSTOM_WING_INFO info;

memset(&info,0,sizeof(info));

info.Index = lpMemScript->GetNumber();

info.ItemIndex = lpMemScript->GetAsNumber();

info.DefenseConstA = lpMemScript->GetAsNumber();

info.IncDamageConstA = lpMemScript->GetAsNumber();

info.IncDamageConstB = lpMemScript->GetAsNumber();

info.DecDamageConstA = lpMemScript->GetAsNumber();

info.DecDamageConstB = lpMemScript->GetAsNumber();

info.OptionIndex1 = lpMemScript->GetAsNumber();

info.OptionValue1 = lpMemScript->GetAsNumber();

info.OptionIndex2 = lpMemScript->GetAsNumber();

info.OptionValue2 = lpMemScript->GetAsNumber();

info.OptionIndex3 = lpMemScript->GetAsNumber();

info.OptionValue3 = lpMemScript->GetAsNumber();

info.NewOptionIndex1 = lpMemScript->GetAsNumber();

info.NewOptionValue1 = lpMemScript->GetAsNumber();

info.NewOptionIndex2 = lpMemScript->GetAsNumber();

info.NewOptionValue2 = lpMemScript->GetAsNumber();

info.NewOptionIndex3 = lpMemScript->GetAsNumber();

info.NewOptionValue3 = lpMemScript->GetAsNumber();

info.NewOptionIndex4 = lpMemScript->GetAsNumber();

info.NewOptionValue4 = lpMemScript->GetAsNumber();

info.ModelType = lpMemScript->GetAsNumber();

strcpy_s(info.ModelName,lpMemScript->GetAsString());

this->SetInfo(info);
}
}
catch(...)
{
ErrorMessageBox(lpMemScript->GetLastError());
}

delete lpMemScript;
}

void CCustomWing::SetInfo(CUSTOM_WING_INFO info) // OK
{
if(info.Index < 0 || info.Index >= MAX_CUSTOM_WING)
{
return;
}

this->m_CustomWingInfo[info.Index] = info;
}

CUSTOM_WING_INFO* CCustomWing::GetInfo(int index) // OK
{
if(index < 0 || index >= MAX_CUSTOM_WING)
{
return 0;
}

if(this->m_CustomWingInfo[index].Index != index)
{
return 0;
}

return &this->m_CustomWingInfo[index];
}

CUSTOM_WING_INFO* CCustomWing::GetInfoByItem(int ItemIndex) // OK
{
for(int n=0;n < MAX_CUSTOM_WING;n++)
{
CUSTOM_WING_INFO* lpInfo = this->GetInfo(n);

if(lpInfo == 0)
{
continue;
}

if(lpInfo->ItemIndex == ItemIndex)
{
return lpInfo;
}
}

return 0;
}

bool CCustomWing::CheckCustomWing(int index) // OK
{
if(this->GetInfo(index) != 0)
{
return 1;
}

return 0;
}

bool CCustomWing::CheckCustomWingByItem(int ItemIndex) // OK
{
if(this->GetInfoByItem(ItemIndex) != 0)
{
return 1;
}

return 0;
}

int CCustomWing::GetCustomWingIndex(int ItemIndex) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

return lpInfo->Index;
}

int CCustomWing::GetCustomWingDefense(int ItemIndex,int ItemLevel) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

return (lpInfo->DefenseConstA*ItemLevel);
}

int CCustomWing::GetCustomWingIncDamage(int ItemIndex,int ItemLevel) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 100;
}

return (lpInfo->IncDamageConstA+(ItemLevel*lpInfo->IncDamageConstB));
}

int CCustomWing::GetCustomWingDecDamage(int ItemIndex,int ItemLevel) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 100;
}

return (lpInfo->DecDamageConstA-(ItemLevel*lpInfo->DecDamageConstB));
}

int CCustomWing::GetCustomWingOptionIndex(int ItemIndex,int OptionNumber) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

switch(OptionNumber)
{
case 0:
return lpInfo->OptionIndex1;
case 1:
return lpInfo->OptionIndex2;
case 2:
return lpInfo->OptionIndex3;
}

return 0;
}

int CCustomWing::GetCustomWingOptionValue(int ItemIndex,int OptionNumber) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

switch(OptionNumber)
{
case 0:
return lpInfo->OptionValue1;
case 1:
return lpInfo->OptionValue2;
case 2:
return lpInfo->OptionValue3;
}

return 0;
}

int CCustomWing::GetCustomWingNewOptionIndex(int ItemIndex,int OptionNumber) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

switch(OptionNumber)
{
case 0:
return lpInfo->NewOptionIndex1;
case 1:
return lpInfo->NewOptionIndex2;
case 2:
return lpInfo->NewOptionIndex3;
case 3:
return lpInfo->NewOptionIndex4;
}

return 0;
}

int CCustomWing::GetCustomWingNewOptionValue(int ItemIndex,int OptionNumber) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

switch(OptionNumber)
{
case 0:
return lpInfo->NewOptionValue1;
case 1:
return lpInfo->NewOptionValue2;
case 2:
return lpInfo->NewOptionValue3;
case 3:
return lpInfo->NewOptionValue4;
}

return 0;
}


Main

CustomWing.cpp

Code: [Select]
// CustomWing.cpp: implementation of the CCustomWing class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "CustomWing.h"

CCustomWing gCustomWing;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CCustomWing::CCustomWing() // OK
{
this->Init();
}

CCustomWing::~CCustomWing() // OK
{

}

void CCustomWing::Init() // OK
{
for(int n=0;n < MAX_CUSTOM_WING;n++)
{
this->m_CustomWingInfo[n].Index = -1;
}
}

void CCustomWing::Load(CUSTOM_WING_INFO* info) // OK
{
for(int n=0;n < MAX_CUSTOM_WING;n++)
{
this->SetInfo(info[n]);
}
}

void CCustomWing::SetInfo(CUSTOM_WING_INFO info) // OK
{
if(info.Index < 0 || info.Index >= MAX_CUSTOM_WING)
{
return;
}

this->m_CustomWingInfo[info.Index] = info;
}

CUSTOM_WING_INFO* CCustomWing::GetInfo(int index) // OK
{
if(index < 0 || index >= MAX_CUSTOM_WING)
{
return 0;
}

if(this->m_CustomWingInfo[index].Index != index)
{
return 0;
}

return &this->m_CustomWingInfo[index];
}

CUSTOM_WING_INFO* CCustomWing::GetInfoByItem(int ItemIndex) // OK
{
for(int n=0;n < MAX_CUSTOM_WING;n++)
{
CUSTOM_WING_INFO* lpInfo = this->GetInfo(n);

if(lpInfo == 0)
{
continue;
}

if(lpInfo->ItemIndex == ItemIndex)
{
return lpInfo;
}
}

return 0;
}

BOOL CCustomWing::CheckCustomWing(int index) // OK
{
if(this->GetInfo(index) != 0)
{
return 1;
}

return 0;
}

BOOL CCustomWing::CheckCustomWingByItem(int ItemIndex) // OK
{
if(this->GetInfoByItem(ItemIndex) != 0)
{
return 1;
}

return 0;
}

BOOL CCustomWing::CheckCustomWingByModelType(int ItemIndex,int ModelType) // OK
{
for(int n=0;n < MAX_CUSTOM_WING;n++)
{
CUSTOM_WING_INFO* lpInfo = this->GetInfo(n);

if(lpInfo == 0)
{
continue;
}

if(lpInfo->ItemIndex == ItemIndex && lpInfo->ModelType == ModelType)
{
return 1;
}
}

return 0;
}

int CCustomWing::GetCustomWingItem(int index) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfo(index);

if(lpInfo == 0)
{
return 0;
}

return lpInfo->ItemIndex;
}

int CCustomWing::GetCustomWingIndex(int ItemIndex) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

return lpInfo->Index;
}

int CCustomWing::GetCustomWingDefense(int ItemIndex,int ItemLevel) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

return (lpInfo->DefenseConstA*ItemLevel);
}

int CCustomWing::GetCustomWingIncDamage(int ItemIndex,int ItemLevel) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

return ((lpInfo->IncDamageConstA+(ItemLevel*lpInfo->IncDamageConstB))-100);
}

int CCustomWing::GetCustomWingDecDamage(int ItemIndex,int ItemLevel) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

return (100-(lpInfo->DecDamageConstA-(ItemLevel*lpInfo->DecDamageConstB)));
}

int CCustomWing::GetCustomWingOptionIndex(int ItemIndex,int OptionNumber) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

switch(OptionNumber)
{
case 0:
return lpInfo->OptionIndex1;
case 1:
return lpInfo->OptionIndex2;
case 2:
return lpInfo->OptionIndex3;
}

return 0;
}

int CCustomWing::GetCustomWingOptionValue(int ItemIndex,int OptionNumber) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

switch(OptionNumber)
{
case 0:
return lpInfo->OptionValue1;
case 1:
return lpInfo->OptionValue2;
case 2:
return lpInfo->OptionValue3;
}

return 0;
}

int CCustomWing::GetCustomWingNewOptionIndex(int ItemIndex,int OptionNumber) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

switch(OptionNumber)
{
case 0:
return lpInfo->NewOptionIndex1;
case 1:
return lpInfo->NewOptionIndex2;
case 2:
return lpInfo->NewOptionIndex3;
case 3:
return lpInfo->NewOptionIndex4;
}

return 0;
}

int CCustomWing::GetCustomWingNewOptionValue(int ItemIndex,int OptionNumber) // OK
{
CUSTOM_WING_INFO* lpInfo = this->GetInfoByItem(ItemIndex);

if(lpInfo == 0)
{
return 0;
}

switch(OptionNumber)
{
case 0:
return lpInfo->NewOptionValue1;
case 1:
return lpInfo->NewOptionValue2;
case 2:
return lpInfo->NewOptionValue3;
case 3:
return lpInfo->NewOptionValue4;
}

return 0;
}

CustomWing.h

Code: [Select]
// CustomWing.h: interface for the CCustomWing class.
//
//////////////////////////////////////////////////////////////////////

#pragma once

struct CUSTOM_WING_INFO
{
int Index;
int ItemIndex;
int DefenseConstA;
int IncDamageConstA;
int IncDamageConstB;
int DecDamageConstA;
int DecDamageConstB;
int OptionIndex1;
int OptionValue1;
int OptionIndex2;
int OptionValue2;
int OptionIndex3;
int OptionValue3;
int NewOptionIndex1;
int NewOptionValue1;
int NewOptionIndex2;
int NewOptionValue2;
int NewOptionIndex3;
int NewOptionValue3;
int NewOptionIndex4;
int NewOptionValue4;
int ModelType;
char ModelName[32];
};

class CCustomWing
{
public:
CCustomWing();
virtual ~CCustomWing();
void Init();
void Load(CUSTOM_WING_INFO* info);
void SetInfo(CUSTOM_WING_INFO info);
CUSTOM_WING_INFO* GetInfo(int index);
CUSTOM_WING_INFO* GetInfoByItem(int ItemIndex);
BOOL CheckCustomWing(int index);
BOOL CheckCustomWingByItem(int ItemIndex);
BOOL CheckCustomWingByModelType(int ItemIndex,int ModelType);
int GetCustomWingItem(int index);
int GetCustomWingIndex(int ItemIndex);
int GetCustomWingDefense(int ItemIndex,int ItemLevel);
int GetCustomWingIncDamage(int ItemIndex,int ItemLevel);
int GetCustomWingDecDamage(int ItemIndex,int ItemLevel);
int GetCustomWingOptionIndex(int ItemIndex,int OptionNumber);
int GetCustomWingOptionValue(int ItemIndex,int OptionNumber);
int GetCustomWingNewOptionIndex(int ItemIndex,int OptionNumber);
int GetCustomWingNewOptionValue(int ItemIndex,int OptionNumber);
public:
CUSTOM_WING_INFO m_CustomWingInfo[MAX_CUSTOM_WING];
};

extern CCustomWing gCustomWing;

Credits
Louis

Gracias:

Una consulta, los comandos /addstr..... y demas, como los hago funcionar... ya que lo probe y no puedo .... :(

Commnad + Messaser English version

http://www.mediafire.com/file/t14bn8g0o8m2lrm/MuServer_Commnad_Message.rar

Gracias:

Quiero actualizar, no sé si hay algún error no funcionan si puedes mirar

1.Comando Top
2.Event
Evento Roleta Russa (Novo)   
Evento Pega Pega             
Evento Esconde Esconde   
3.Custom Npc Colecionador

Gracias:

on: January 22, 2018, 08:50:55 AM 8 MuOnline / Season6 / Re: XEMU 203

GS+ GSCS Virus!!!

Gracias:

on: January 19, 2018, 03:31:46 AM 9 MuOnline / Archivos desarrollo / Re: [CODIGO]X-Team + TT Custom

Muserver + client ???

Gracias:

on: January 16, 2018, 06:21:39 PM 10 MuOnline / Temas solucionados / Re: ayuda a instalar dmn webshop 1.6

Video tutorial Install

Gracias:

Paginas: [1]