Sziasztok.
Mikor kőberakás után kérdőjeleket ír sikeres/sikertelen behelyezés helyett, ezt hogy lehet kijavítani?
/usr/game/share/locale/hungary/locale_string.txt:
"¸ŢĆľĽ® şÎÂřżˇ Ľş°řÇĎż´˝Ŕ´Ď´Ů.";
"Sikeresen hozzáadtad a követ.";
"¸ŢĆľĽ® şÎÂřżˇ ˝ÇĆĐÇĎż´˝Ŕ´Ď´Ů.";
"A kő hozzáadása nem sikerült.";
Alapból nem volt benne ez, belemásoltam, de így se jó. :/
Ugyanúgy kérdőjeleket ír.
Jó lenne tudni milyen szerverfilét használsz. :-X
[SPOILER](https://board.ddmt2.net/proxy.php?request=http%3A%2F%2Fwww.abconline.hu%2Fimage%2F863308389w320h320.jpg&hash=08ffb552608fde88d758293df459f320db05d89d)[/SPOILER]
syserrbe írja a lefordítatlan sort, másold bele a locale_stringedbe, meg alatta nyilván magyarul, és kész.
Nem akar működni. :/
Nem tudnátok küldeni egy jó locale_string.txt-t amibe írja rendesen?
Egyébként samurai core-t használok.
Samurai core forrásban a char_item.cpp fájlban találod ezt a részt:
case ITEM_METIN:
{
LPITEM item2;
if (!IsValidItemPosition(DestCell) || !(item2 = GetItem(DestCell)))
return false;
if (item2->IsExchanging())
return false;
if (item2->GetType() == ITEM_PICK) return false;
if (item2->GetType() == ITEM_ROD) return false;
int i;
for (i = 0; i < ITEM_SOCKET_MAX_NUM; ++i)
{
DWORD dwVnum;
if ((dwVnum = item2->GetSocket(i)) <= 2)
continue;
TItemTable * p = ITEM_MANAGER::instance().GetTable(dwVnum);
if (!p)
continue;
if (item->GetValue(5) == p->alValues[5])
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("°°Ŕş Áľ·ůŔÇ ¸ŢĆľĽ®Ŕş ż©·Ż°ł şÎÂřÇŇ Ľö ľř˝Ŕ´Ď´Ů."));
return false;
}
}
if (item2->GetType() == ITEM_ARMOR)
{
if (!IS_SET(item->GetWearFlag(), WEARABLE_BODY) || !IS_SET(item2->GetWearFlag(), WEARABLE_BODY))
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ŔĚ ¸ŢĆľĽ®Ŕş Ŕĺşńżˇ şÎÂřÇŇ Ľö ľř˝Ŕ´Ď´Ů."));
return false;
}
}
else if (item2->GetType() == ITEM_WEAPON)
{
if (!IS_SET(item->GetWearFlag(), WEARABLE_WEAPON))
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("ŔĚ ¸ŢĆľĽ®Ŕş ą«±âżˇ şÎÂřÇŇ Ľö ľř˝Ŕ´Ď´Ů."));
return false;
}
}
else
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("şÎÂřÇŇ Ľö ŔÖ´Â ˝˝·ÔŔĚ ľř˝Ŕ´Ď´Ů."));
return false;
}
for (i = 0; i < ITEM_SOCKET_MAX_NUM; ++i)
if (item2->GetSocket(i) >= 1 && item2->GetSocket(i) <= 2 && item2->GetSocket(i) >= item->GetValue(2))
{
// Ľ® Č®·ü
// Stein Chance
if (number(1, 100) <= stone_chance) // Erfolgreich
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("??? ??? ???????."));
item2->SetSocket(i, item->GetVnum());
}
else // Nicht Erfolgreich
{
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("??? ??? ???????."));
item2->SetSocket(i, ITEM_BROKEN_METIN_VNUM);
}
LogManager::instance().ItemLog(this, item2, "SOCKET", item->GetName());
ITEM_MANAGER::instance().RemoveItem(item, "REMOVE (METIN)");
break;
}
if (i == ITEM_SOCKET_MAX_NUM)
ChatPacket(CHAT_TYPE_INFO, LC_TEXT("şÎÂřÇŇ Ľö ŔÖ´Â ˝˝·ÔŔĚ ľř˝Ŕ´Ď´Ů."));
}
break
Ez felel a kövek berakásáért, és úgy írja a kívánt szöveget, ahogy a feltételek adottak.
locale_string.txt-be ezt írod:
"??? ??? ???????.";
"Sikeresen hozzáadtad a követ.";
"??? ??? ???????.";
"A kő hozzáadása nem sikerült.";
Köszi. :D