[Source Frage]Mover aus User?

02/25/2012 16:49 Unleashed!#1
Hallo,
Ich habe gerade mal etwas versucht, in dem ich den Mover, der einen Befehl ausführt (z.B. /ci) benötige. Ich habe mir gedacht, dass müsste doch irgendwie so gehen:
Code:
CUser* pUser = (CUser*)s.dwValue;
CMover* pMover = prj.GetMover( pUser.dwId );
Scheint aber nicht zu gehen, wie krieg ich das denn hin? :D
02/25/2012 17:02 yannickFlyff#2
CMover* pMover = pUser
02/25/2012 19:24 Unleashed!#3
Danke, jetzt habe ich ca. das selbe Problem, nur andersrum xD
Code:
CUser* pUser = pMover;
Gibt folgenden Error aus:
Code:
error C2440: 'initializing' : cannot convert from 'CMover *' to 'CUser *'
Wie mache ich dann aus einem Mover pointer einen User pointer?
02/25/2012 19:59 Jopsi332#4
Code:
((CMover*)this)->
geht eig
02/25/2012 20:02 yannickFlyff#5
Quote:
Originally Posted by Jopsi332 View Post
Code:
((CMover*)this)->
geht eig
Würde vorrausetzen das er das in der CUser klasse used .. dödel

Mach ((CUser*)pMover)
02/25/2012 20:25 Unleashed!#6
Ich will es in der Funktion CMover::CreateAbilityOption_SetItemSFX benutzen, funktioniert aber so nicht:
Code:
	CMover* pMover = GetActiveMover();
	CUser* pUser = ((CUser*)pMover);

        pUser->AddText( "blabla" );
Folgender Error:
Code:
error C2027: use of undefined type 'CUser'
02/25/2012 23:11 Sedrika#7
Wie siehts aus mit:
PHP Code:
((CUser*)pMover)->AddText"..." ); 
?
02/25/2012 23:18 Unleashed!#8
Schon probiert, ging auch nicht, habs jetzt anders gelöst.
02/25/2012 23:21 Sedrika#9
Quote:
Originally Posted by Unleashed! View Post
Schon probiert, ging auch nicht, habs jetzt anders gelöst.
Wär auch nett die Lösung zu schreiben, damit andere die das auch machen wollen (oder nicht) es sehen können.
02/26/2012 00:21 Unleashed!#10
Andere Frage:
Warum klappt es eigentlich nicht, wenn ich der Klasse CMover das Attribut m_dwGlow hinzufüge, diesem dann aus dem Befehl "/changeGlow" einen anderen Wert zu weise, den ich dann wiederum in der Funktion CreateItemSFX(mover.cpp) abfrage um den Glow zu ändern?
Der Glow ist dann der selbe, und wenn ich den Wert von dwGlow ausgeben lasse, ist es auch noch der Standard Wert. Wenn ich aber in der FuncTextCMD beim Befehl /changeGlow noch ein [Code]if( pMover->dwGlow == GLOW_RED)
pUser->AddText("Bla");[Code]
rein haue, gibt er mir den Wert, den ich über den Befehl eingegeben habe aus.