.
Spam gemeldetQuote:
Hauptsache Sedrika hat was neues released :> XD
Wär machbar :DQuote:
Frag das in dem Thread wo man mit einem Befehl ingame Chars erstellen kann.
Weil du überlegst, ich such etwas, um spaß zu haben :awesome:Quote:
Das is ne geile Idee xDDD
Man ey wieso kommen mir solche Ideen nicht, ich sitze immer darum und überlege was kann ich so neu machen, mir fällt nie was ein >:
Spam nicht, achja gemeldet.Quote:
Könnens ja kombinieren.. der chara wird einfach totliegend erstellt.. -_-
kann eigentlich schon gehen, weil GetToken() nen tokenType(int) returnt und net nen String^^... aber das würde dir net den richtigen CUser geben^^Quote:
meinste echt CMover * pTarget = ( CUser *) s. GetToken (); geht? :D strings in user casten? :D
CUser* pUser = (CUser*)s.dwValue;
Der Cast returniert in dem Fall aber auch nicht den richtigen User. Soweit ich das verstanden hab, wird mit dem Code der User, der den Command ausgeführt hat, zurückgegeben.Quote:
das is der richtige Code^^Code:CUser* pUser = (CUser*)s.dwValue;
Quote:
Da ich aktuell nicht testen kann, ob es funktioniert, würd ich jemanden bitten, diesen Befehl einmal für mich zu testen, wenns geht, viel spaß.
PHP Code:ON_TEXTCMDFUNC( TextCmd_KillPlayer, "kill", "kill", "kill", "kill", TCM_SERVER, AUTH_ADMINISTRATOR, "" )
Ausführung wie folgt: /kill SedrikaPHP Code:BOOL TextCmd_KillPlayer( CScanner& s )
{
#ifdef __WORLDSERVER
CUser* pUser = (CUser*)s.dwValue;
CMover* pTarget = (CUser*)s.GetToken();
if( IsValidObj( (CObj*)pTarget ) && !pTarget->IsNPC() )
pTarget->DoDie( pUser );
#endif // __WORLDSERVER
return TRUE;
}
Danach sollte der besagte spieler sterben.
Wenns geht, bitte sagen und wenn nicht, auch melden, dankeee.
BOOL TextCmd_KillPlayer( CScanner& s )
{
#ifdef __WORLDSERVER
CUser* pUser = (CUser*)s.dwValue;
if( strcmp( pUser->GetName(), s.Token) ){
u_long PlayerID = CPlayerDataCenter::GetInstance()->GetPlayerId( s.token );
if( PlayerID > 0 )
pUser->DoDie( pUser );
}
#endif // __WORLDSERVER
return TRUE;
}
Quote:
Umgeschrieben hab ich es grad auf folgendes:
Der Compiler zeigt da keinen error an, ich warte grad bis ich testen kann ^^ MSSQL install ebend.PHP Code:BOOL TextCmd_KillPlayer( CScanner& s )
{
#ifdef __WORLDSERVER
CUser* pUser = (CUser*)s.dwValue;
if( strcmp( pUser->GetName(), s.Token) ){
u_long PlayerID = CPlayerDataCenter::GetInstance()->GetPlayerId( s.token );
if( PlayerID > 0 )
pUser->DoDie( pUser );
}
#endif // __WORLDSERVER
return TRUE;
}
BOOL TextCmd_KillPlayer( CScanner& s )
{
#ifdef __WORLDSERVER
CUser* pUser = (CUser*)s.dwValue;
s.GetToken();
if( strcmp( pUser->GetName(), s.Token) != 0 ){
u_long PlayerID = CPlayerDataCenter::GetInstance()->GetPlayerId( s.token );
if( PlayerID <= 0 )
return FALSE;
CUser *SilenceIKillYou = g_UserMng.GetUserByID( PlayerID );
if( SilenceIKillYou && IsValidObj( SilenceIKillYou ) )
{
SilenceIKillYou->DoDie((CCtrl*)pUser);
}
}
#endif // __WORLDSERVER
return TRUE;
}
rollback kaQuote:
Die idee hatte ich schon seit 1-2 Wochen aber zuwenig ahnung das umzusetzen ^^ . Was ich mir auch noch gedacht habe /heal player HP z.B
/heal Achi 9999 .
P:S :Noch ein paar ideen .Code:s.GetToken(); u_long idTarget = CPlayerDataCenter::GetInstance()->GetPlayerId( s.token ); if( idTarget <= 0 ) return FALSE; CUser *pTarget = g_UserMng.GetUserByID( idTarget ); if( IsValidObj( pTarget ) ) { int nVal = s.GetNumber() + pTarget->GetHitPoint(); if( nVal > pTarget->GetMaxHitPoint() ) nVal = pTarget->GetMaxHitPoint(); pTarget->SetHitPoint( nVal ); }
/Chatt Playername text .. .
z.B
/Chatt Achileus Hallo ich bin Achileus Offi hat ja schon sowas das andere reden können aber dann muss man immer denn player anklicken ^^ .
oderCode:s.GetToken(); u_long idTarget = CPlayerDataCenter::GetInstance()->GetPlayerId( s.token ); if( idTarget <= 0 ) return FALSE; CUser *pTarget = g_UserMng.GetUserByID( idTarget ); if( IsValidObj( pTarget ) ) { TCHAR szChr[1024]; s.GetLastFull(); if( strlen( s.token ) > 260 ) return FALSE; strcpy( szChr, s.token ); StingTrimRight( szChr ); g_UserMng.AddChat( (CCtrl*)pTarget, (LPCSTR)szChr ); }
was etwas schwerer ist
/rollback Playername
weiß nicht ob das möglich ist das sind natürlich alles Befehle for fun^^.
GetUserByID *shame on me* >>Quote:
Habe ja oben paar befehle ich teste mal das eben von pumbaa aus
P:S Kommt ein Fehler
CUser *SilenceIKillYou = g_UserMng.GetPlayerByID( PlayerID );
Source\FlyFF Source\_Interface\FuncTextCmd.cpp(5133) : error C2039: 'GetPlayerByID' : is not a member of 'CUserMng'
User.h(789) : see declaration of 'CUserMng'
Sedrika ´s compilt geht aber nicht Ingame wenn ich kill eingebe dann sterbe ich nicht und wenn ich kill + playername eingabe passiert auch nichts ,.