added command line, added basic character

This commit is contained in:
2025-06-12 00:17:59 +03:00
parent 64c0f41884
commit af4f0c3cad
65 changed files with 262985 additions and 304 deletions

View File

@@ -5,7 +5,9 @@
#include "tier0/mem.h"
#include "tier0/platform.h"
#include "tier0/lib.h"
#include "tier0/minmax_off.h"
#include "new"
#include "tier0/minmax.h"
template <typename T>
class CUtlBuffer;
@@ -161,7 +163,7 @@ public:
size_t GetSize() const;
size_t GetRealSize() const;
void Resize( size_t nSize );
void Resize( size_t nSize, size_t nDataOffset = 0 );
void* GetMemory(void) const;
operator T*( void ) const;
@@ -248,7 +250,7 @@ size_t CUtlResizableBuffer<T>::GetRealSize( void ) const
// Resizes memory.
//-----------------------------------------------------------------------------
template <typename T>
void CUtlResizableBuffer<T>::Resize( size_t nSize )
void CUtlResizableBuffer<T>::Resize( size_t nSize, size_t nDataOffset )
{
if (nSize > m_nAllocatedSize)
{
@@ -256,14 +258,14 @@ void CUtlResizableBuffer<T>::Resize( size_t nSize )
T *pData = (T*)V_malloc(nAllocationSize*sizeof(T));
for (size_t i = 0; i < m_nSize; i++)
{
new (&pData[i]) T(m_pData[i]);
new (&pData[i+nDataOffset]) T(m_pData[i]);
m_pData[i].~T();
}
V_free(m_pData);
m_pData = pData;
m_nAllocatedSize = nAllocationSize;
}
for ( size_t i = m_nSize; i < nSize; ++i )
for ( size_t i = m_nSize+nDataOffset; i < nSize; ++i )
new (&m_pData[i]) T();
m_nSize = nSize;
}

View File

@@ -10,7 +10,9 @@ public:
CUtlString( const CUtlString &sz );
void AppendTail( const char *psz );
void AppendTail( char ch );
void AppendHead( const char *psz );
void AppendHead( char ch );
void AppendAt( size_t nPosition, const char *psz );
void RemoveTail( size_t nCount );
@@ -20,6 +22,7 @@ public:
char *GetString( void );
size_t GetLenght( void );
operator char*( void );
operator CUtlVector<char>&( void );
CUtlString& operator=(const CUtlString &sz);
bool operator==(const char* psz);
bool operator!=(const char* psz);

View File

@@ -32,8 +32,8 @@ public:
T *GetData( void );
size_t GetSize( void );
void Resize( size_t nSize );
void Reserve( size_t nSize );
void Resize( size_t nSize, size_t nDataOffset = 0 );
void Reserve( size_t nSize, size_t nDataOffset = 0 );
T &operator[]( size_t nIndex );
T &operator[]( size_t nIndex ) const;
@@ -121,7 +121,11 @@ void CUtlVector<T>::AppendHead( const T &data )
template<typename T>
void CUtlVector<T>::AppendHead( const T *pData, size_t n )
{
size_t prevSize = m_data.GetSize();
m_data.Resize(prevSize+n, n);
for ( size_t i = 0; i < n; i++ )
new (&m_data[i]) T(pData[i]);
m_nSize+=n;
}
template<typename T>
@@ -135,7 +139,7 @@ void CUtlVector<T>::AppendTail( const T *pData, size_t n )
{
m_data.Resize(m_data.GetSize()+n);
for ( size_t i = 0; i < n; i++ )
m_data[i+m_nSize] = pData[i];
new (&m_data[i+m_nSize]) T(pData[i]);
m_nSize+=n;
}
@@ -180,15 +184,15 @@ size_t CUtlVector<T>::GetSize( void )
}
template<typename T>
void CUtlVector<T>::Resize( size_t nSize )
void CUtlVector<T>::Resize( size_t nSize, size_t nDataOffset )
{
m_data.Resize(nSize);
m_data.Resize(nSize, nDataOffset);
m_nSize = nSize;
}
template<typename T>
void CUtlVector<T>::Reserve( size_t nSize )
void CUtlVector<T>::Reserve( size_t nSize, size_t nDataOffset )
{
m_data.Resize(nSize);
m_data.Resize(nSize, nDataOffset);
}
template<typename T>
CUtlVector<T> &CUtlVector<T>::operator=(const CUtlVector<T> &vec)