Beiträge von EnZi
-
-
-
Hi I added HIGHLIGHT System (slot effect by VegaS) but its doesnt work When I drop item and pick it up I have no effect.. Syserr is clean.. Someone know where can be a problem?
-
-
Hi.. I have a little problem in my TP window..
Im still getting
Here is part of code where problem is
Code- def __MakeBtn(self):
- i = 0
- for name in self.pageNames:
- btn = ui.RadioButton()
- btn.SetParent(self.board)
- btn.SetUpVisual("d:/ymir work/ui/game/windows/tab_button_large_01.sub")
- btn.SetOverVisual("d:/ymir work/ui/game/windows/tab_button_large_02.sub")
- btn.SetDownVisual("d:/ymir work/ui/game/windows/tab_button_large_03.sub")
- btn.SetPosition( 60 + 7 + (i * 90) if i < 4 else 60 + 7 + (i * 90) - 360 , (38 if i < 4 else 63) ) <--- in this line is a problem
- btn.SetText(name)
- btn.SetEvent(ui.__mem_func__(self.__OnClickPageButton), name)
- btn.Show()
- self.pages[name] = btn
- if i == 0:
- self.pages[name].Down()
- self.__MakeMaps(name)
- i = i + 1
Someone know what I did bad?
-
Hi.. I searching for someone who can configurate my server from SQL to TXT.. I tried it by myslef but I have different table design and these free convertors etp.. doesnt work for me
For better description: In first I need export my item/mob proto from Navicat to .txt and setup server for .txt reading..
Contact me in PM
-
Thx I found problem in PythonCharacterModule.cpp Now its work with IsGameMaste
-
Hi.. Today I tried add ITEM_VNUM_ID in uitooltip but Im still getting this error:
Code- 1010 20:17:22054 :: Traceback (most recent call last):
- 1010 20:17:22054 :: File "ui.py", line 1604, in OnOverInItem
- 1010 20:17:22054 :: File "ui.py", line 84, in __call__
- 1010 20:17:22054 :: File "ui.py", line 75, in __call__
- 1010 20:17:22054 :: File "uiInventory.py", line 1322, in OverInItem
- 1010 20:17:22054 :: File "uiInventory.py", line 1524, in ShowToolTip
- 1010 20:17:22054 :: File "uiToolTip.py", line 741, in SetInventoryItem
- 1010 20:17:22054 :: File "uiToolTip.py", line 2171, in AddItemData
- 1010 20:17:22054 :: AttributeError
- 1010 20:17:22054 :: :
- 1010 20:17:22054 :: 'module' object has no attribute 'IsGameMaster'
- 1010 20:17:22054 ::
Here is my uitooltip.py
Someone know where is a problem?
-
Hi.. Im fixxing source warnings but I found few of them which I cant fix
(Yeah, I know they are just warns but I want them fixxed ) I appreciate any help
char.cpp warn
Code- char.cpp: In member function 'void CHARACTER::OpenMyShop(const char*, TShopItemTable*, BYTE, DWORD, int)':
- char.cpp:835: warning: comparison is always true due to limited range of data type
- char.cpp: In member function 'void CHARACTER::UpdateShopItems()':
- char.cpp:960: warning: comparison is always false due to limited range of data type
- char.cpp: In member function 'void CHARACTER::OpenShop(DWORD, const char*, bool)':
- char.cpp:1103: warning: comparison is always false due to limited range of data type
- char.cpp: In member function 'bool CHARACTER::ChannelChange(int)':
- char.cpp:8295: warning: 'wPort' may be used uninitialized in this function
- char.cpp:8294: warning: 'lAddr' may be used uninitialized in this function
char.cpp
Code- if (pkItem->GetWindow() == DRAGON_SOUL_INVENTORY && pkItem->GetCell() >= 0 && pkItem->GetCell() <= 5) //<--- line 835
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("You can't sell DSS stones if it is using"));
- return;
- }
- ---------------------------------------------------------------------------------------------------------------------------------------------
- if (-1 == (shop->pos.cell = GetEmptyInventory(item_table->bSize, extended_count))) //<--- line 960
- {
- sys_err("no empty position in npc inventory");
- return;
- }
- --------------------------------------------------------------------------------------------------------------------------------------------
- if (-1 == (shop->pos.cell = GetEmptyInventory(item_table->bSize, extended_count))) //<--- line 1103
- {
- sys_err("no empty position in npc inventory");
- return;
- }
- -------------------------------------------------------------------------------------------------------------------------------------------
- #ifdef __CHANNEL_CHANGE_SYSTEM__
- bool CHARACTER::ChannelChange(int channel)
- {
- if (!IsPC() || channel == g_bChannel)
- {
- ChatPacket(CHAT_TYPE_INFO, "Znajdujesz si?na wybranym kanale.");
- if (m_pkTimedEvent)
- {
- event_cancel(&m_pkTimedEvent);
- }
- return false;
- }
- long lAddr; //<--- line 8294
- WORD wPort; //<--- line 8295
- long x = GetX();
- long y = GetY();
- long lMapIndex = GetMapIndex();
- if (GetMapIndex() != 41 && GetMapIndex() != 21 && GetMapIndex() != 1 && GetMapIndex() != 43 && GetMapIndex() != 23 && GetMapIndex() != 3 && GetMapIndex() != 61 && GetMapIndex() != 62 && GetMapIndex() != 63 && GetMapIndex() != 64 && GetMapIndex() != 65 && GetMapIndex() != 67 && GetMapIndex() != 68 && GetMapIndex() != 69 && GetMapIndex() != 70 && GetMapIndex() != 104 && GetMapIndex() != 71 && GetMapIndex() != 72 && GetMapIndex() != 73 && GetMapIndex() != 219 && GetMapIndex() != 87 && GetMapIndex() != 88 && GetMapIndex() != 89 && GetMapIndex() != 5 && GetMapIndex() != 25 && GetMapIndex() != 45 && GetMapIndex() != 210 && GetMapIndex() != 218)
- {
- ChatPacket(CHAT_TYPE_INFO, "Nie mo?sz zmieni?kana? z tej mapy.");
- return false;
- }
- char szQuery[512];
- snprintf(szQuery, sizeof(szQuery), "SELECT port, host FROM %smap_list WHERE channel = %d AND map_index = %ld", get_table_postfix(), channel, lMapIndex);
- SQLMsg *msg = DBManager::instance().DirectQuery(szQuery);
- MYSQL_RES *res = msg->Get()->pSQLResult;
- if (!res)
- {
- ChatPacket(1, "Cannot find map %d on channel %d", lMapIndex, channel);
- return false;
- }
- int rows;
- if ((rows = mysql_num_rows(res)) <= 0)
- {
- ChatPacket(1, "Cannot find map %d on channel %d", lMapIndex, channel);
- return false;
- }
- for (int i = 0; i < rows; ++i)
- {
- MYSQL_ROW row = mysql_fetch_row(res);
- int cur = 0;
- str_to_number(wPort, row[cur++]);
- str_to_number(lAddr, row[cur++]);
- }
- if (chChange_port_allow_find(wPort))
- {
- ChatPacket(CHAT_TYPE_INFO, "You can't go to the CH choosed!");
- return false;
- }
- if (g_iUserLimit > 0)
- {
- int iTotal;
- int * paiEmpireUserCount;
- int iLocal;
- DESC_MANAGER::instance().GetUserCount(iTotal, &paiEmpireUserCount, iLocal);
- if (g_iUserLimit <= iTotal)
- {
- ChatPacket(1, "Wybrany kana?%d) jest przepe?iony.", channel);
- return false;
- }
- }
- ChatPacket(CHAT_TYPE_COMMAND, "channel %d", channel);
- Stop();
- Save();
- if (GetSectree())
- {
- GetSectree()->RemoveEntity(this);
- ViewCleanup();
- EncodeRemovePacket(this);
- }
- m_lWarpMapIndex = lMapIndex;
- m_posWarp.x = x;
- m_posWarp.y = y;
- sys_log(0, "WarpSet %s %d %d current map %d target map %d port %d", GetName(), x, y, GetMapIndex(), lMapIndex, wPort);
- TPacketGCWarp p;
- p.bHeader = HEADER_GC_WARP;
- p.lX = x;
- p.lY = y;
- p.lAddr = lAddr;
- p.wPort = wPort;
- GetDesc()->Packet(&p, sizeof(TPacketGCWarp));
- return true;
- }
- #endif
char_item.cpp warn
Code- char_item.cpp: In member function 'bool CHARACTER::UseItemEx(CItem*, TItemPos)':
- char_item.cpp:6022: warning: comparison between signed and unsigned integer expressions
- char_item.cpp: In member function 'bool CHARACTER::EquipItem(CItem*, int)':
- char_item.cpp:7243: warning: array subscript has type 'char'
char_item.cpp
Code- case ITEM_BLEND:
- // 새로운 약초들
- #ifdef ENABLE_YMIR_AFFECT_FIX
- if ((CheckTimeUsed(item) == false)) { return false; }
- #endif
- sys_log(0, "ITEM_BLEND!!");
- if (Blend_Item_find(item->GetVnum()))
- {
- int affect_type = AFFECT_BLEND;
- if (item->GetSocket(0) >= _countof(aApplyInfo)) //<--- line 6022
- {
- sys_err("INVALID BLEND ITEM(id : %d, vnum : %d). APPLY TYPE IS %d.", item->GetID(), item->GetVnum(), item->GetSocket(0));
- return false;
- }
- int apply_type = aApplyInfo[item->GetSocket(0)].bPointType;
- int apply_value = item->GetSocket(1);
- int apply_duration = item->GetSocket(2);
- -------------------------------------------------------------------------------------------------------------------------------------------
- if (true == item->IsEquipped())
- {
- if (-1 != item->GetProto()->cLimitRealTimeFirstUseIndex)
- {
- if (0 == item->GetSocket(1))
- {
- long duration = (0 != item->GetSocket(0)) ? item->GetSocket(0) : item->GetProto()->aLimits[item->GetProto()->cLimitRealTimeFirstUseIndex].lValue; //<--- line 7243
- if (0 == duration)
- duration = 60 * 60 * 24 * 7;
- item->SetSocket(0, time(0) + duration);
- item->StartRealTimeExpireEvent();
- }
- item->SetSocket(1, item->GetSocket(1) + 1);
- }
char_skill.cpp warn
char_skill.cpp
Code- bool CHARACTER::UseSkill(DWORD dwVnum, LPCHARACTER pkVictim, bool bUseGrandMaster)
- {
- #ifdef ENABLE_PVP_ADVANCED
- int getSkill[] = {94, 95, 96, 109, 110, 111};
- for (unsigned int j = 0; j < _countof(getSkill); j++)
- {
- if (pkVictim){
- if (getSkill[j] == dwVnum && pkVictim->IsPC() && pkVictim->GetQuestFlag(BLOCK_BUFF)) //<--- line 2453
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("duel_block_victim_buff"), pkVictim->GetName());
- pkVictim = this;
- }
- }
- }
- #endif
PetSystem.cpp warn
PetSystem.cpp
Codecmd_gm.cpp warn
Code- cmd_gm.cpp:3360:9: warning: multi-character character constant
- cmd_gm.cpp: In function 'void do_gift_refresh(CHARACTER*, const char*, int, int)':
- cmd_gm.cpp:1244: warning: operation on 'col' may be undefined
- cmd_gm.cpp: In function 'void do_shop_refresh_items(CHARACTER*, const char*, int, int)':
- cmd_gm.cpp:1740: warning: operation on 'col' may be undefined
- cmd_gm.cpp: In function 'void do_close_shop(CHARACTER*, const char*, int, int)':
- cmd_gm.cpp:1406: warning: 'channels' may be used uninitialized in this function
cmd_gm.cpp
Code- case 'acce': //<--- line 3360
- Acce_init();
- break;
- -------------------------------------------------------------------------------------------------------------------------------------------
- if (pRes->uiNumRows>0)
- {
- MYSQL_ROW row;
- while ((row = mysql_fetch_row(pRes->pSQLResult)) != NULL)
- {
- int col = 3;
- char attrs[256];
- char sockets[256];
- strlcpy(attrs, "", 256);
- strlcpy(sockets, "", 256);
- for (int i = 0; i<6; i++)
- sprintf(sockets, "%s%s%s", sockets, row[col++], (i<5 ? "|" : ""));
- //col--;
- for (int i = 0; i<7; i++)
- sprintf(attrs, "%s%s,%s%s", attrs, row[col++], row[col++], (i<6 ? "|" : "")); //<--- 1244
- ch->ChatPacket(CHAT_TYPE_COMMAND, "gift_item %s#%s#%s#%s#%s#%s#%s#%s", row[0], row[1], row[2], row[23], row[24], row[25], sockets, attrs);
- }
- ch->ChatPacket(CHAT_TYPE_COMMAND, "gift_info %d", pRes->uiNumRows);
- }
- -------------------------------------------------------------------------------------------------------------------------------------------
- if (pRes->uiNumRows > 0){
- MYSQL_ROW row;
- while ((row = mysql_fetch_row(pRes->pSQLResult)) != NULL)
- {
- DWORD channels; //<--- 1406
- str_to_number(channels, row[1]);
- if (channels != g_bChannel){
- ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Nie mozesz zamknac sklepu z tego kanalu(Sklep znajduje sie na: %d)."), channels);
- return;
- }
- }
- DeleteShop(id);
- }
entity_view.cpp warn
entity_view.cpp
Code- void operator () (LPENTITY ent)
- {
- // 오브젝트가 아닌 것은 거리를 계산하여 거리가 멀면 추가하지 않는다.
- if (!ent->IsType(ENTITY_OBJECT))
- if (DISTANCE_APPROX(ent->GetX() - m_me->GetX(), ent->GetY() - m_me->GetY()) > dwViewRange)
- return;
- #ifdef SHOP_DISTANCE
- if (ent->IsType(ENTITY_CHARACTER) && m_me->IsType(ENTITY_CHARACTER))
- {
- LPCHARACTER chMe = (LPCHARACTER)m_me;
- LPCHARACTER chEnt = (LPCHARACTER)ent;
- DWORD ViewRange = quest::CQuestManager::instance().GetEventFlag("shop_dist");
- if (ViewRange>0 && DISTANCE_APPROX(ent->GetX() - m_me->GetX(), ent->GetY() - m_me->GetY()) > ViewRange &&
- chMe->IsPC() && chEnt->IsNPC() && (chEnt->GetRaceNum() == 30000 || chEnt->GetRaceNum() == 30001 || chEnt->GetRaceNum() == 30002 || chEnt->GetRaceNum() == 30003 || chEnt->GetRaceNum() == 30004 || chEnt->GetRaceNum() == 30005 || chEnt->GetRaceNum() == 30006 || chEnt->GetRaceNum() == 30007 || chEnt->GetRaceNum() == 30008)) // shop_type
- return;
- }
- #endif
-
Fixxed in UICHAT
-
Hi... Today I tried new SF (Terabithia.pl) but I cant use GM Commands.. Everytime I type any GM Command it send in to chat like normal message (ex. /i 19)
Here is SS:
Bitte melden Sie sich an, um diesen Link zu sehen.
Someone know where is a problem?
-
No I changed nothing in these 2 functions.. Yes, items are in shop..
Send me the line where it creates the shop in Source, there where it calls the function DestroyItem.
I checked everything but I do not find this DestroyItem function in any offline shop files..
-
Do you changed something in this functions, if yes what?
void ITEM_MANAGER::DestroyItem(LPITEM item, const char* file, size_t line)
bool CHARACTER::DestroyItem(TItemPos Cell)
If you log in again, are the items in the shop?
No I changed nothing in these 2 functions.. Yes, items are in shop..
-
Hi.. I have a little problem with OfflineShop.. Sometimes when I create offlineshop, items which I selected to sell stays in invetory and when I teleport then its kick me out of game.. and when I login back items finally disappear from inventory...
GIF
Bitte melden Sie sich an, um diesen Link zu sehen.
I have this is SYSSER:
item_manager.cpp
Code- #ifndef DEBUG_ALLOC
- void ITEM_MANAGER::DestroyItem(LPITEM item)
- #else
- void ITEM_MANAGER::DestroyItem(LPITEM item, const char* file, size_t line)
- #endif
- {
- if (item->GetSectree())
- item->RemoveFromGround();
- if (item->GetOwner())
- {
- if (CHARACTER_MANAGER::instance().Find(item->GetOwner()->GetPlayerID()) != NULL)
- {
- sys_err("DestroyItem: GetOwner %s %s!!", item->GetName(), item->GetOwner()->GetName());
- item->RemoveFromCharacter();
- }
- else
- {
- sys_err ("WTH! Invalid item owner. owner pointer : %p", item->GetOwner());
- }
- }
- TR1_NS::unordered_set<LPITEM>::iterator it = m_set_pkItemForDelayedSave.find(item);
- if (it != m_set_pkItemForDelayedSave.end())
- m_set_pkItemForDelayedSave.erase(it);
- DWORD dwID = item->GetID();
- sys_log(2, "ITEM_DESTROY %s:%u", item->GetName(), dwID);
- if (!item->GetSkipSave() && dwID)
- {
- DWORD dwOwnerID = item->GetLastOwnerPID();
- db_clientdesc->DBPacketHeader(HEADER_GD_ITEM_DESTROY, 0, sizeof(DWORD) + sizeof(DWORD));
- db_clientdesc->Packet(&dwID, sizeof(DWORD));
- db_clientdesc->Packet(&dwOwnerID, sizeof(DWORD));
- }
- else
- {
- sys_log(2, "ITEM_DESTROY_SKIP %s:%u (skip=%d)", item->GetName(), dwID, item->GetSkipSave());
- }
- if (dwID)
- m_map_pkItemByID.erase(dwID);
- m_VIDMap.erase(item->GetVID());
- #ifdef M2_USE_POOL
- pool_.Destroy(item);
- #else
- #ifndef DEBUG_ALLOC
- M2_DELETE(item);
- #else
- M2_DELETE_EX(item, file, line);
- #endif
- #endif
- }
char_item.cpp
Code- #ifdef ENABLE_DELETE_ITEMS_SYSTEM
- bool CHARACTER::DestroyItem(TItemPos Cell)
- {
- LPITEM item = NULL;
- if (!CanHandleItem())
- return false;
- if (IsDead() || IsStun())
- return false;
- if (!IsValidItemPosition(Cell) || !(item = GetItem(Cell)))
- return false;
- if (true == item->isLocked() || item->IsExchanging())
- return false;
- if (quest::CQuestManager::instance().GetPCForce(GetPlayerID())->IsRunning() == true)
- return false;
- if (item->IsBind() || item->IsUntilBind())
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("RUHA_BAGLI_NESNELER_SILINEMEZ"));
- return false;
- }
- // EXTRA_CHECK
- int iPulse = thecore_pulse();
- if (iPulse - GetSafeboxLoadTime() < PASSES_PER_SEC(g_nPortalLimitTime)
- || iPulse - GetRefineTime() < PASSES_PER_SEC(g_nPortalLimitTime)
- || iPulse - GetMyShopTime() < PASSES_PER_SEC(g_nPortalLimitTime))
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("Please wait a second."));
- return false;
- }
- if (GetOfflineShopOwner() || GetExchange() || GetMyShop() || GetShopOwner() || IsOpenSafebox() || IsCubeOpen() || IsAttrTransferOpen())
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("거래창,창고 등을 연 상태에서는 귀환부,귀환기억부 를 사용할수 없습니다."));
- return false;
- }
- // EXTRA_CHECK
- #ifdef ENABLE_NEW_PET_SYSTEM
- if (GetNewPetSystem()->IsActivePet())
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("pett-yolla"));
- return false;
- }
- #endif
- #ifdef ENABLE_SUPPORT_SYSTEM
- if (GetSupportSystem()->IsActiveSupport())
- {
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("saman-yolla"));
- return false;
- }
- #endif
- if (item->GetVnum() >= 71220 && item->GetVnum() <= 71239)
- {
- return false;
- }
- #ifdef ENABLE_NEW_PET_SYSTEM
- if (item->GetVnum() >= 55701 && item->GetVnum() <= 55710)
- DBManager::instance().DirectQuery("DELETE FROM new_petsystem WHERE id = %d", item->GetID());
- #endif
- #ifdef ENABLE_SUPPORT_SYSTEM
- if (item->GetVnum() >= 8383 && item->GetVnum() <= 8384)
- DBManager::instance().DirectQuery("DELETE FROM new_support WHERE id = %d", item->GetID());
- #endif
- ChatPacket(CHAT_TYPE_INFO, LC_TEXT("%s has been deleted successfully."), item->GetName());
- ITEM_MANAGER::instance().RemoveItem(item);
- return true;
- }
- #endif
I'm willing to pay for fix
Someone know where is a problem?
-
#SOLVED
I forget to edit WEAR_MAX in GameType.h
-
Hi.. Today I tried Rune System... At first glance, everything looked great but after few tests I found this problem..
I can´t equip normal DS Runes and these new runes are equiped as both of them..Someone know where is problem?
SYSERR:
Bitte melden Sie sich an, um diesen Link zu sehen.Bitte melden Sie sich an, um diesen Link zu sehen.