- Katılım
- 20 Kas 2025
- Konular
- 104
- Mesajlar
- 670
- Online süresi
- 12g 78686s
- Reaksiyon Skoru
- 707
- Altın Konu
- 0
- Başarım Puanı
- 163
- Yaş
- 32
- TM Yaşı
- 4 Ay 29 Gün
- MmoLira
- 10,624
- DevLira
- 3
Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!
Selamlar,
Merhaba arkadaşlar,
Source İçersinde CTRL F Yapıp Aratin Bu kodu
( bool CLuaEngine::ExecuteScript)
Verdigim Kod ile Değiştirdikten sonra oyun için lua değişişligi otomatık çalışacaktır. Oyunu kapatıp acmanıza gerek kalmadın.
Merhaba arkadaşlar,
Source İçersinde CTRL F Yapıp Aratin Bu kodu
( bool CLuaEngine::ExecuteScript)
Verdigim Kod ile Değiştirdikten sonra oyun için lua değişişligi otomatık çalışacaktır. Oyunu kapatıp acmanıza gerek kalmadın.
Kod:
bool CLuaEngine::ExecuteScript(CUser * pUser, CNpc * pNpc, int32 nEventID, int8 bSelectedReward, const char * filename)
{
ScriptBytecodeMap::iterator itr;
bool result = false;
m_lock->AcquireReadLock();
itr = m_scriptMap.find(filename);
if (itr == m_scriptMap.end())
{
// Build full path to script
std::string szPath = LUA_SCRIPT_DIRECTORY;
szPath += filename;
// Release the read lock (we're not reading anymore)
m_lock->ReleaseReadLock();
// Attempt to compile
BytecodeBuffer bytecode;
bytecode.reserve(LUA_SCRIPT_BUFFER_SIZE);
if (!SelectAvailableScript()->CompileScript(szPath.c_str(), bytecode))
{
printf("ERROR: Could not compile Lua script.\n");
printf("FILE: %s\n", szPath.c_str());
printf("USER: %s\n", pUser->GetName().c_str());
printf("ZONE: %d\n", pUser->GetZoneID());
printf("NPC ID: %d\n", pNpc->m_sSid);
printf("-\n");
return false;
}
// Acquire the write lock (we're adding the compiled script)
m_lock->AcquireWriteLock();
#if !defined(LUA_SCRIPT_CACHE_DISABLED)
// Add the script to our map
m_scriptMap[filename] = bytecode;
#endif
// Now that we have the bytecode, we can use it.
result = SelectAvailableScript()->ExecuteScript(pUser, pNpc, nEventID, bSelectedReward,
filename, bytecode);
// Done using the lock.
m_lock->ReleaseWriteLock();
}
else
{
// Already have the bytecode, so now we need to use it.
result = SelectAvailableScript()->ExecuteScript(pUser, pNpc, nEventID, bSelectedReward,
filename, itr->second);
// Done using the lock.
m_lock->ReleaseReadLock();
}
return result;
}






