[Biete]Source Shop & so. :p

06/10/2013 02:31 Wanetrain#1
~
06/10/2013 05:09 Reavern#2
#moved
06/11/2013 19:59 Wanetrain#3
Push. :p
06/12/2013 20:20 Wanetrain#4
Push. :p
06/13/2013 10:05 FlyCraft.TobiLap#5
Kommunikation mit ihm ist total schlecht, er braucht mehrere Tage um auf ne PM zu antworten und dann steht da nix vernünftiges drinne -.-
06/15/2013 03:05 Wanetrain#6
Quote:
Originally Posted by FlyCraft.TobiLap View Post
Kommunikation mit ihm ist total schlecht, er braucht mehrere Tage um auf ne PM zu antworten und dann steht da nix vernünftiges drinne -.-
Die antworten auf deine Nachrichten kamen spätestens 5h Später, ich schau selbst nicht 100x am Tage rein, da ich nicht die zeit dafür hab.

Antworten unvernünftig? aha, gut zu wissen, wenn man etwas nicht versteht dann ja.. tut es mir leid.
06/20/2013 19:10 Wanetrain#7
Push ~

Update: V15 Standart Source wäre sofort auf VS2012 verfügbar. :)
07/22/2013 17:05 Wanetrain#8
Die neue Datenbank Klasse kann man wie die derzeitige verwenden (Was durch die vielen Switch Case abfragen nicht zu empfehlen ist!) oder die meinige nehmen, hier habt ihr einen Ausschnitt:

Quote:
#include "StdAfx.h"

#include "dploginsrvr.h"

#include "DBWorkerIns.h"
#include "DBInstance.h"

#include "IQuerys.h"

extern APP_INFO g_appInfo;
extern CDPLoginSrvr g_dpLoginSrvr;

CDBWorkerIns::CDBWorkerIns()
{
m_hHandle = NULL;

m_pWorkList[eQUERY_INS::INS_NEW_PLAYER] = &CDBWorkerIns::InsNewCharacter;
}

CDBWorkerIns::~CDBWorkerIns()
{
}

void CDBWorkerIns::Worker()
{
if( m_hHandle == NULL )
return;

DWORD dwBytesTransferred = NULL;
DWORD dwCompletionKey = NULL;
DB_OVERLAPPED* pOverlapped = nullptr;

m_pDBInstance = new CDBInstance;
m_pDBInstance->Connect( "TEST_SRV_03", "", "" );

while( true )
{
GetQueuedCompletionStatus( m_hHandle, &dwBytesTransferred, &dwCompletionKey, (LPOVERLAPPED*)&pOverlapped, INFINITE );

void( CDBWorkerIns::*pFunction )( DB_OVERLAPPED* ) = m_pWorkList[pOverlapped->nQueryMode];

if( pFunction )
( this->*( pFunction ) )( pOverlapped );
else
Error( "(INFO) %s(%d): Invalid QueryMode!! [INS][%d]" __FUNCTION__, __LINE__, pOverlapped->nQueryMode );
}
}

void CDBWorkerIns::InsNewCharacter( _In_ DB_OVERLAPPED* lpDbOverlapped )
{
CAr arRead( lpDbOverlapped->lpBuf, lpDbOverlapped->uBufSize );

char szAccount[MAX_ACCOUNT] = { NULL, };
char szPassword[MAX_PASSWORD] = { NULL, };
char szPlayer[16] = { NULL, };

int nSlot = NULL;
int nSex = NULL;
int nJob = JOB_MERCENARY;
int nHeadMesh = NULL;
int nHairMesh = NULL;

D3DXVECTOR3 vPos = D3DXVECTOR3( 255, 255, 255 );

arRead.ReadString( szAccount, MAX_ACCOUNT );
arRead.ReadString( szPlayer, 16 );
arRead >> nSlot;
arRead >> nSex;
arRead >> nJob;
arRead >> nHairMesh;
arRead >> nHeadMesh;

if( strlen( szPlayer ) < 4 )
{
SAFE_DELETE_ARRAY( lpDbOverlapped->lpBuf );
return;
}

if( nSlot > 2 || nSlot < 0 || nJob > 4 || nJob < 1 || nSex > 1 || nSex < 0 )
{
SAFE_DELETE_ARRAY( lpDbOverlapped->lpBuf );
return;
}

if( prj.IsInvalidName( szPlayer ) || !prj.IsAllowedLetter( szPlayer ) )
{
SAFE_DELETE_ARRAY( lpDbOverlapped->lpBuf );
return;
}

strcpy( lpDbOverlapped->szAccount, szAccount );

prj.GetRandomBeginPos( WI_WORLD_MADRIGAL, &vPos );

m_pDBInstance->Execute( "CHARACTER_STR @iGu = 'I1', @iserverindex = '%02d', @iaccount = '%s', @im_szName = '%s', @iplayerslot = %d, @im_nJob = %d, @im_vPos_x = %f, @im_vPos_y = %f, @im_vPos_z = %f, @idwWorldID = %d, @im_dwSex = %d", g_appInfo.dwSys, szAccount, szPlayer, nSlot, nJob, vPos.x, vPos.y, vPos.z, WI_WORLD_MADRIGAL, nSex );
if( m_pDBInstance->Fetch() )
{
int nError = m_pDBInstance->GetInt( "nError" );
switch( nError )
{
case 0: g_dpLoginSrvr.SendError( ERROR_USER_EXISTS, lpDbOverlapped->dpid ); break; // Player Name exists.
case 1: g_dpLoginSrvr.SendError( ERROR_DUPLICATE_SLOT, lpDbOverlapped->dpid ); break; // Slot not empty.
case 2: g_dpLoginSrvr.SendPlayerList( szAccount, szPassword, lpDbOverlapped->dpid ); break; // User OK --> Created.
}
}
SAFE_DELETE_ARRAY( lpDbOverlapped->lpBuf );
}
Recht einfach zu benutzen, wer sie nutzen möcht einfach melden und ich zeige euch genau wie ihr dies machen könnt! :)
11/14/2013 09:07 Wanetrain#9
~~ Pushi, Snapshot Handler addet.

Andere dinge in Arbeit.^^
11/18/2013 16:36 Wanetrain#10
~~ Push. ;>