Something went wrong. Try again.
the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
Something went wrong. Try again.
1.2 kB · 71 lines
C++
at master
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
#include "stdafx.h"
TLSStorageOrbis* TLSStorageOrbis::m_pInstance = NULL;
BOOL TLSStorageOrbis::m_activeList[sc_maxSlots];__thread LPVOID TLSStorageOrbis::m_values[sc_maxSlots];
TLSStorageOrbis::TLSStorageOrbis(){ for(int i=0;i<sc_maxSlots; i++) { m_activeList[i] = false; m_values[i] = NULL; }}
TLSStorageOrbis* TLSStorageOrbis::Instance(){ if ( m_pInstance == 0 ) // Is this the first time? { m_pInstance = new TLSStorageOrbis; // Create the singleton instance. } return m_pInstance;}
int TLSStorageOrbis::Alloc(){ for(int i=0; i<sc_maxSlots; i++) { if(m_activeList[i] == false) { m_activeList[i] = true; m_values[i] = NULL; return i; } } assert(0); // we've ran out of slots}
BOOL TLSStorageOrbis::Free( DWORD _index ){ if(m_activeList[_index] == false) return false; // not been allocated
m_activeList[_index] = false; m_values[_index] = NULL; return true;}
BOOL TLSStorageOrbis::SetValue( DWORD _index, LPVOID _val ){ if(m_activeList[_index] == false) return false; m_values[_index] = _val; return true;}
LPVOID TLSStorageOrbis::GetValue( DWORD _index ){ if(m_activeList[_index] == false) return NULL; return m_values[_index];}