Jump to content
Notícia
  • Adquira já o seu VIP!

Fallem

Steel Member
  • Content Count

    64
  • Joined

  • Last visited

  • WCoins

    130 [ Donate ]

Community Reputation

7

About Fallem

  • Rank
    WebCheats

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Adiciona no discord, falo sobre a source com você e possível correção. Outlook#7912

  2. outra dúvida .... alguém poderia me explicar como funcinar esse código , peguei a source XWYD para estudos . porem quando eu registro a pista +0 entrar normal mais quando eu mato os lich nao refina a pista. . se alguém souber e tiver como ajuda eu ficaria muito grato meu discord: SpanFrank#7748 pode pode me chama no PV tbm . obg na source XWYD nao achei STRUCT_ITEM NextPista; memset(&NextPista, 0, sizeof(STRUCT_ITEM)); NextPista.sIndex = 5134; NextPista.stEffect[0].cEffect = 43; NextPista.stEffect[0].cValue = 1; #nesse código aki nao achei onde fala da refinação da pista # estou começando a estuda esse contéudo namespace ClueLevel { Lich::Lich() { } Lich::~Lich() { } bool Lich::onGroupRegistered(const uint16_t masterId) { if (getGroupCount() > 1) return false; bool containsGroup = false; foreachGroup([&containsGroup, &masterId](uint16_t otherGroup) { if (otherGroup == masterId) containsGroup = true; }); if (containsGroup) return false; addGroup(masterId); return true; } void Lich::onClueReset() { if (getGroupCount() == 0) return; for (int client = 0; client < MAX_USER; client++) { auto user = Func::GetUserFromIndex(client); auto mob = GetMobFromIndex(client); auto play = Func::getPlayerinArea({ 3330, 1600 }, { 3451, 1661 }); if (play.size() > 0) { for (auto& i : play) DoTeleport(i, 3284 + rand() % 2, 1685 + rand() % 2, 0); } auto play2 = Func::getPlayerinArea({ 3330, 1600 }, { 3451, 1661 }); if (play2.size() > 0) { for (auto& i : play2) DoTeleport(i, 3284 + rand() % 2, 1685 + rand() % 2, 0); } } resetGroups(); killLichAll(true); } void Lich::onClueStart() { if (getGroupCount() == 0) return; uint8_t idx = 0; foreachGroup([&idx](uint16_t masterId) { auto userData = &Global::userData[masterId]; if (idx == 0) Func::partyTeleportUxmal(masterId, 3347, 1605, 0); //Func::executeForParty(masterId, [&idx](uint16_t member){DoTeleport(member, 3347, 1605, 0); }); else Func::partyTeleportUxmal(masterId, 3406, 1605, 0); //Func::executeForParty(masterId, [&idx](uint16_t member){DoTeleport(member, 3406, 1605, 0); }); Logs::sendLog(Global::pistalog, "[Enter] -> Grupo do %s Entrou na Pista de Lich.", GetMobFromIndex(masterId)->Mob.Name); idx++; }); Logs::sendLog(Global::pistalog, "[GroupCounter] -> Número de Grupo Registrado na Pista de Lich %d", getGroupCount()); spawnLichEsq(); spawnLichDir(); } bool Lich::onMobKilled(const uint16_t masterId, const uint16_t mobId) { bool containsGroup = false; auto mob = GetMobFromIndex(mobId); auto play = GetMobFromIndex(masterId); auto rnd = Rnd::instance().IRandomX(0, 100); if (!strcmp(mob->Mob.Name, "Lich Infernal")) { if (rnd >= 25 && rnd <= 32) { Func::executeForParty(masterId, [](int32_t member) { STRUCT_ITEM runas[5] = { { 5110, 0, 0, 0, 0, 0, 0 }, { 5112, 0, 0, 0, 0, 0, 0 }, { 5115, 0, 0, 0, 0, 0, 0 }, { 5113, 0, 0, 0, 0, 0, 0 }, { 5111, 0, 0, 0, 0, 0, 0 }, }; if (Func::checkPlayerLiveInArea(member, { 3330, 1600 }, { 3451, 1661 }) == TRUE) PutItem(member, &runas[rand() % 5]); }); Func::sendPistaLider(masterId, { 3330, 1600 }, { 3451, 1661 }, 1); Logs::sendLog(Global::pistalog, "[Winner] -> Grupo do %s ganhou a pista de Lich lado Direito.", play->Mob.Name); killLichAll(true); return true; } killLichEsq(true); spawnLichEsq(); return false; } if (!strcmp(mob->Mob.Name, "Lich Infernal ")) { if (rnd >= 25 && rnd <= 32) { Func::executeForParty(masterId, [](int32_t member) { STRUCT_ITEM runas[5] = { { 5110, 0, 0, 0, 0, 0, 0 }, { 5112, 0, 0, 0, 0, 0, 0 }, { 5115, 0, 0, 0, 0, 0, 0 }, { 5113, 0, 0, 0, 0, 0, 0 }, { 5111, 0, 0, 0, 0, 0, 0 }, }; if (Func::checkPlayerLiveInArea(member, { 3330, 1600 }, { 3451, 1661 }) == TRUE) PutItem(member, &runas[rand() % 5]); }); Func::sendPistaLider(masterId, { 3330, 1600 }, { 3451, 1661 }, 1); Logs::sendLog(Global::pistalog, "[Winner] -> Grupo do %s ganhou a pista de Lich lado Esquerdo.", play->Mob.Name); killLichAll(true); return true; } killLichDir(true); spawnLichDir(); return false; } return false; } bool Lich::onMovimented(const uint16_t masterId, const uint16_t destX, const uint16_t destY) { bool containsGroup = false; return true; } void Lich::killLichEsq(bool updatePlayerSight) { auto liveMobs = Func::getMobsInAreaStr({ 3330, 1600 }, { 3390, 1656 }, { 2566 }); for (auto& i : liveMobs) { pMob.Mob.BaseStatus.curHP = 0; MobKilled(i, i, 0, 0); } } void Lich::killLichDir(bool updatePlayerSight) { auto liveMobs = Func::getMobsInAreaStr({ 3388, 1601 }, { 3451, 1656 }, { 2566 }); for (auto& i : liveMobs) { pMob.Mob.BaseStatus.curHP = 0; MobKilled(i, i, 0, 0); } } void Lich::killLichAll(bool updatePlayerSight) { // 3451 1645 auto liveMobs = Func::getMobsInAreaStr({ 3330, 1600 }, { 3451, 1656 }, { 2566 }); for (auto& i : liveMobs) { pMob.Mob.BaseStatus.curHP = 0; MobKilled(i, i, 0, 0); } } void Lich::spawnLichEsq() { static const STRUCT_POSITION spawn_pos[3] = { { 3368, 1634 }, { 3357, 1621 }, { 3355, 1637 }, }; auto rnd = Rnd::instance().IRandomX(0, 2); for (auto x = 0; x < 7; x++)// esse loop faz a quantidade de Lich CreateMob("Lich_Infernal", spawn_pos[rnd].X, spawn_pos[rnd].Y, "clue_of_runes/Lich", 0); // Lado Esquerdo } void Lich::spawnLichDir() { static const STRUCT_POSITION spawn_pos[3] = { { 3423, 1632 }, { 3413, 1623 }, { 3411, 1632 }, }; auto rnd = Rnd::instance().IRandomX(0, 2); for (auto x = 0; x < 7; x++)// esse loop faz a quantidade de Lich CreateMob("Lich_Infernal_", spawn_pos[rnd].X, spawn_pos[rnd].Y, "clue_of_runes/Lich", 0); // Lado Direito } void Lich::onSpawnBoss() { } void Lich::onPlayerTimer() { } } // end namespace ClueLevel
  3. você teria esse Hook da coreção , ou sabe de alguma source que tenha "
  4. Ola bom dia alguém teria como me dizer como faço para certo NPC entrar itens com add vo pega como exemplo o NPC Treinadora ( source Xwyd) no NPC treinadora aparece o add correto que eu quero , mais quando eu compra certo item ele vem +0 sem add #pragma region Recicladora troca 4 if (npc->Mob.Inventory[packet->sellSlot].Index == 939) // Treinadora { if (userData->Ingame.LastClicked != packet->sellSlot) { userData->Ingame.LastClicked = packet->sellSlot; SendClientMessage(client, Language::instance().getStringFormat(ComporItem, pItem->Name)); return true; } if (slot == -1) { SendClientMessage(client, "Seu inventário estar cheio."); return true; } if (Andarilho == 3467) Loop += 15; if (Andarilho_2 == 3467) Loop += 15; int amount = 0; for (int i = 0; i < Loop; i++) { if (mob->Mob.Inventory.Index == 524 && amount <= 1) amount += Func::GetItemAmount(&mob->Mob.Inventory); } if (amount < 1) { SendClientMessage(client, "Estar faltando algum item."); return true; } if (amount > 1) amount = 1; for (int i = 0; i < amount; i++) { int slot = Func::GetFirstSlot(client, SlotType::Inventory, 524); Func::AmountMinus(&mob->Mob.Inventory[slot]); SendItem(client, (uint16_t)SlotType::Inventory, slot, &mob->Mob.Inventory[slot]); } STRUCT_ITEM itemSend = { 939, 43 , 9 , 0 , 0 ,0 , 0 }; PutItem(client, &itemSend); SendEtc(client); return true;
  5. Podem fechao topico já encontrei o erro , ( no npcgener estava com espaço em 2 nome de npc )
  6. versão 7556 , eu coloquei ele na pasta certa
  7. de acordo com o print , eu crio um determinado npc Sempre da erro quando eu abro TMSV . alguem sabe como corrijo esse erro ? quando eu entro no jogo ele fica revivendo morto sempre :D
  8. tudo certo agora , minha cabeça tava bugada aki kkk
  9. sim quando eu mudo o diretorio não esta salvando , sempre que eu tento editar o diretorio ele automaticamente cria uma pasta em outro local com esse nome ==> ServeP sempre que clico para salva as configuraçães diz que foi solva , mais quando eu abro o NPBR continua da mesma edição que estava antes .
  10. alguém sabe como resolver a criação de contas nesse NPBR? quando eu crio a conta através dele , eu não consigo entra nela no jogo , e sempre da conta inexistente quando eu crio pelo AccountCreator eu consigo entrar no game , porem criando pelo AccountCreator , o NPBR não mostra a conta para editar ela .
  11. else if (strcmp(cmd, "+item") == 0) { STRUCT_ITEM put; memset(&put, 0, sizeof(STRUCT_ITEM)); sscanf_s(msg, "%hu %d %d %d %d %d %d", &put.Index, &put.EF1, &put.EFV1, &put.EF2, &put.EFV2, &put.EF3, &put.EFV3); NativeFunctions::putItem(client, &put); Functions::SendClientChatCor(client, "Item adicionado ao inventario", 0xFF0000); NativeFunctions::sendClientMessage(client, "Item adicionado ao inventario"); return true; } } return false; } bool Command::AdministradorComands(int client, p334h* packet) { auto mob = NativeFunctions::getMobFromIndex(client); p295h p; memset(&p, 0, sizeof(p295h)); p.header.ClientId = client; p.header.PacketId = 0x295; p.header.Size = sizeof(p295h); strcpy_s(p.Name, (char*)mob->Mob.Name); strcpy_s(p.Comand, packet->Msg); memcpy_s(packet, sizeof(p295h), &p, sizeof(p295h)); bool bol = Command::GMCommand(client, (p295h*)packet); // if(!bol) NativeFunctions::processClientMessage(client, (char*)packet); return !bol; achei na Source , uma duvida eu tentei usar o comando cmd +item é gm +item , nao conseguir adicionar nenhum item . sempre diz que o jogador nao esta conectado alguém descobriu a proteção que essa source tem para usar os comandos
  12. conseguir aki obg pela ajuda ! pode fecha o tópico .
  13. aki está assim vou pega um item qualquer ex: tigre de fogo ID 2379 no itemcoin ta assim 2379 , 450 no itemlist ta assim 2379,Tigre_de_Fogo,313.0,255.0.0.0.0,0,1500000,16384,0,0,EF_CLASS,51 para deixa o tigre de fogo com imagem de tigre de fogo é só editar esse código 313 por 450 ou inverter os código? sou novo nessa a aréa. obg pela ajuda
×
×
  • Create New...