Marco Posted January 29, 2018 at 11:56 AM Share Posted January 29, 2018 at 11:56 AM Hello friends :$ Tenho o sistema de loja offline do ken, contudo tenho alguns problemas... Tive um problema relacionado com o banco, poderias criar loja com + de 2kkk em tiems, no entanto se vender tudo fica apenas ( 2147483647 ) Vi um fix do vegas, no entanto apenas funciona ao criar loja, se criar loja com + de 2kkk dá aviso e não cria loja,, Exemplo: Tenho 500kk no banco da loja, meto 1 item a 1kkk ( se vender fico com 1.5kkk ) mas se meter 2 items a 1kkk cada ( ficaria com 2.5kkk ) no entanto não cria loja, pois dá o aviso que ultrapassa o tais 2kkk Mas o problema agora é se criar loja com um item barato que não faça ultrapassar os 2kkk do banco e depois for add mais deixa na mesma. Exemplo: Se tiver 500kk no banco, criar loja com 2 items a 1kkk cada ( ficaria com 2.5 kkk se vender, mas dá o tal aviso e não cria ) até aqui tudo bem. Mas se criar loja em que o valor dos items não ultrapasse os 2kkk e abrir a dita loja abre sem problema.. Mas há a opção de add novos items à loja e é possível add novos items, o que faz com que ultrapasse os 2kkk O que gostaria era algo como no criar loja, mas para a funcção de add item, para que ao add ele verifica-se ou que o yang no banco fosse mais elevado, Cumprimentos, Link to comment Share on other sites More sharing options...
WLN Posted January 29, 2018 at 01:44 PM Share Posted January 29, 2018 at 01:44 PM tem o maxyang adicionado no servidor, e a correção do ken para tal, correto? Link to comment Share on other sites More sharing options...
[Admin] tierrilopes Posted January 29, 2018 at 02:42 PM Share Posted January 29, 2018 at 02:42 PM O fix do vegas, deverá conter código na função de criar loja que verifica a quantidade de yang existente, assim como a quantidade de yang a ser adicionada em loja. Bastará copiar/adaptar o fix à função de editar a loja. Link to comment Share on other sites More sharing options...
Marco Posted January 29, 2018 at 03:17 PM Author Share Posted January 29, 2018 at 03:17 PM (edited) 1 hora atrás, wery disse: tem o maxyang adicionado no servidor, e a correção do ken para tal, correto? o yang está o normal, os tais 2kkk e pouco, em relação à correcção, possivelmente não :/ se me poderes ajudar... 46 minutos atrás, Tierri Lopes disse: O fix do vegas, deverá conter código na função de criar loja que verifica a quantidade de yang existente, assim como a quantidade de yang a ser adicionada em loja. Bastará copiar/adaptar o fix à função de editar a loja. Era isso que queria ajuda... Seria add em add items e mudar preço ( penso que é apenas isso ) Fix dele foi este* Citar - [ File: /Src/common/service.h ] #1.) Add this: #define __OFFLINE_SHOP_FIX_OPEN #define __OFFLINE_SHOP_VALUE_MAX 2000000000 #define __OFFLINE_SHOP_WARNING "[Protect Offline] Have more than 2.000.000.000 Yang!" - [ File: /Src/game/src/char.cpp ] #1.) Search function: if (!LC_IsBrazil()) { DWORD nTotalMoney = 0; for (BYTE n = 0; n < bItemCount; ++n) nTotalMoney += (pTable + n)->price; if (GOLD_MAX - 1 <= nTotalMoney) { sys_err("[OVERFLOW_GOLD] Overflow (GOLD_MAX) id %u name %s", GetPlayerID(), GetName()); ChatPacket(CHAT_TYPE_INFO, LC_TEXT("20억 냥을 초과하여 상점을 열수가 없습니다")); return; } } #2.) Replace function with this: #ifdef __OFFLINE_SHOP_FIX_OPEN int64_t szTotalMoney = 0; for (int n = 0; n < bItemCount; ++n) { szTotalMoney += static_cast<int64_t>((pTable+n)->price); } std::auto_ptr<SQLMsg> pMsg(DBManager::instance().DirectQuery("SELECT money FROM player.player WHERE id = %u", GetPlayerID())); if (pMsg->Get()->uiNumRows == 0) return; DWORD dwCurrentMoney = 0; MYSQL_ROW row = mysql_fetch_row(pMsg->Get()->pSQLResult); str_to_number(dwCurrentMoney, row[0]); szTotalMoney += static_cast<int64_t>(dwCurrentMoney); if (__OFFLINE_SHOP_VALUE_MAX <= szTotalMoney) { ChatPacket(CHAT_TYPE_INFO, __OFFLINE_SHOP_WARNING); return; } #else if (!LC_IsBrazil()) { DWORD nTotalMoney = 0; for (BYTE n = 0; n < bItemCount; ++n) nTotalMoney += (pTable + n)->price; if (GOLD_MAX - 1 <= nTotalMoney) { sys_err("[OVERFLOW_GOLD] Overflow (GOLD_MAX) id %u name %s", GetPlayerID(), GetName()); ChatPacket(CHAT_TYPE_INFO, LC_TEXT("20억 냥을 초과하여 상점을 열수가 없습니다")); return; } } #endif Edited January 29, 2018 at 03:30 PM by L2P Link to comment Share on other sites More sharing options...
WLN Posted January 29, 2018 at 03:38 PM Share Posted January 29, 2018 at 03:38 PM fiz testes aqui também, porém creio que esteja pior que o teu, xD ele está criando loja com inventário e banco full gold, permite add itens abre com qualquer valor etc, mesmo após a correção Link to comment Share on other sites More sharing options...
Marco Posted February 2, 2018 at 09:04 PM Author Share Posted February 2, 2018 at 09:04 PM #UP Link to comment Share on other sites More sharing options...
[Admin] tierrilopes Posted February 5, 2018 at 07:56 PM Share Posted February 5, 2018 at 07:56 PM Confirmem se a lista de erros é esta sff: Cria loja mesmo com yang full (ou yang que ultrapasse o valor máximo) Ao editar loja, o valor total do yang pode ultrapassar o valor máximo definido Link to comment Share on other sites More sharing options...
Marco Posted February 5, 2018 at 08:10 PM Author Share Posted February 5, 2018 at 08:10 PM 12 minutos atrás, Tierri Lopes disse: Confirmem se a lista de erros é esta sff: Cria loja mesmo com yang full (ou yang que ultrapasse o valor máximo) Ao editar loja, o valor total do yang pode ultrapassar o valor máximo definido Relativamente ao criar loja tenho um fix do vegas No entanto editar ( adicionar novos items ou alterar preços de items na loja ) é que não está fix Link to comment Share on other sites More sharing options...
[Admin] tierrilopes Posted February 5, 2018 at 09:40 PM Share Posted February 5, 2018 at 09:40 PM Qual o valor da variável GOLD_MAX do teu ficheiro common/lentgh.h e do game/offlineshop_config.cpp? Link to comment Share on other sites More sharing options...
Marco Posted February 6, 2018 at 12:22 AM Author Share Posted February 6, 2018 at 12:22 AM GOLD_MAX 2000000000 nos dois ficheiros Link to comment Share on other sites More sharing options...
Marco Posted February 8, 2018 at 02:23 AM Author Share Posted February 8, 2018 at 02:23 AM UP Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now