[PHP] Awakes anzeigen

01/21/2013 21:45 Sedrika#1
.
01/21/2013 21:59 Icetea#2
Nice. Du Pro! Nutze C++ in PHP, nette Idee!

Greetz :D:D:D
01/21/2013 22:03 Sedrika#3
PHP hat die Snytax von C :)
01/22/2013 11:12 Marv!n#4
Gibt er nur die Awake-IDs zurück oder die richtigen Awakenamen?
01/22/2013 11:23 Sedrika#5
Quote:
Originally Posted by Xxl3lubbs View Post
Gibt er nur die Awake-IDs zurück oder die richtigen Awakenamen?
$nDst wird als ID ausgegeben und $nAdj als Wert.
01/22/2013 14:24 Sedrika#6
Wer probleme hat die Attribute anzuzeigen sollte gleich die finder davon lassen.
01/22/2013 15:34 Reavern#7
Quote:
Originally Posted by Sedrika View Post
Ich Hans nur released, da sich anscheinend kein anderer daran gemacht hat.
Die Anderen hans nur nicht released ;)
Ich kenn es schon :p

Die Funktion ist sehr nett und komfortabel inem Admin-Panel ;D
01/22/2013 15:37 Sedrika#8
Quote:
Originally Posted by Reavern View Post
Die Anderen hans nur nicht released ;)
Ich kenn es schon :p

Die Funktion ist sehr nett und komfortabel inem Admin-Panel ;D
Ich kann auch Awake ID's generieren mit den Awakes wie ich es will.
Wenn du das schon kanntest, kennst du auch die andere Methode.

Ich hätte gern einen Beweis dafür gesehen, ansonsten ist das reines gelaber.
01/22/2013 15:47 Reavern#9
Quote:
Originally Posted by Sedrika View Post
Ich kann auch Awake ID's generieren mit den Awakes wie ich es will.
Wenn du das schon kanntest, kennst du auch die andere Methode.

Ich hätte gern einen Beweis dafür gesehen, ansonsten ist das reines gelaber.
So wie ich es damals im Admin-Panel hatte, konnte ich den Namen eines Chars eingeben, dann konnte ich auswählen was ich machen will, also bannen, löschen das übliche Blabla.
Mir wurden die Items aus dem Inventar, der Bank und den Bags angezeigt, mit deren zugehörigen Erweckungen, falls vorhanden.

Das meinte ich mit "Kenn ich schon".

Geschrieben war das von ocram1095.
01/22/2013 17:55 Mariodev#10
Hatten schon in den V14 Zeiten paar Server. Deines etwas besser strukturiert ;)
01/23/2013 11:01 Sedrika#11
Komischerweise haben alle alles, wenn man etwas released.

Woher wusste man denn zu v14 Zeiten ohne die Source wie die Berechnung ist ?

Labern okay, mist labern nicht okay.

Ich will hier nicht hören wer wann was hatte, das hat auch nichts hier zu suchen.
01/23/2013 18:02 Мichie#12
Schon was tolles , ist es viel Arbeit die ID´s in die Genaue Awake zuändern.

?
01/23/2013 18:16 Sedrika#13
Nein, es ist so ziemlich andersherum.
01/23/2013 21:08 Мentus#14
Quote:
Originally Posted by Мichie View Post
Schon was tolles , ist es viel Arbeit die ID´s in die Genaue Awake zuändern.

?
Quote:
Originally Posted by Sedrika View Post
Nein, es ist so ziemlich andersherum.

PHP Code:
        public function GetParam( $nRandomOptItemId, $i, &$pnDst, &$pnAdj ) 
        { 
            if ( 
$i > MAX_RANDOM_OPTION ) 
                return 
false; 
                             
            
$nRandomOption = ( $nRandomOptItemId >> ( 8 + $i * 18 ) ); 
            
$pnAdj = $nRandomOption & 0x000001FF; 
            if( 
$nRandomOption & 0x00000200 ) 
                
$pnAdj = -$pnAdj; 
            
$nRandomOption = $nRandomOption >> 10; 
         
            
$pnDst = $nRandomOption & 0x0000007F; 
                         
            return ( 
$pnDst > 0 ); 
        } 
Ich bin jetzt nicht der Php Profi aber das gibt doch die Awake ID zurück? Es gibt maximal 3, i ist der Wert der Awake z.b 2 wäre für die letzte Awake. ( 0, 1, 2 )
Dann rechnet er das ganze zusammen verschiebt Bits und so weiter.


Im Endeffekt ist $pnDst am Ende der Wert aus der defineAttribute.h, oder nicht? ( Korrigiere mich wenn ich falsch liege. )

Quote:
Originally Posted by Mariodev View Post
Hatten schon in den V14 Zeiten paar Server. Deines etwas besser strukturiert ;)
Dann sag mir mal wie du herrausgefunden hast wieviele Bits nach wo verschoben wurden, ohne Source.
01/23/2013 21:18 Sedrika#15
Quote:
Originally Posted by Мentus View Post
PHP Code:
        public function GetParam( $nRandomOptItemId, $i, &$pnDst, &$pnAdj ) 
        { 
            if ( 
$i > MAX_RANDOM_OPTION ) 
                return 
false; 
                             
            
$nRandomOption = ( $nRandomOptItemId >> ( 8 + $i * 18 ) ); 
            
$pnAdj = $nRandomOption & 0x000001FF; 
            if( 
$nRandomOption & 0x00000200 ) 
                
$pnAdj = -$pnAdj; 
            
$nRandomOption = $nRandomOption >> 10; 
         
            
$pnDst = $nRandomOption & 0x0000007F; 
                         
            return ( 
$pnDst > 0 ); 
        } 
Ich bin jetzt nicht der Php Profi aber das gibt doch die Awake ID zurück? Es gibt maximal 3, i ist der Wert der Awake z.b 2 wäre für die letzte Awake. ( 0, 1, 2 )
Dann rechnet er das ganze zusammen verschiebt Bits und so weiter.


Im Endeffekt ist $pnDst am Ende der Wert aus der defineAttribute.h, oder nicht? ( Korrigiere mich wenn ich falsch liege. )



Dann sag mir mal wie du herrausgefunden hast wieviele Bits nach wo verschoben wurden, ohne Source.
Exakt.
Durch das verschieben bekommst du ID ( $pnDst ) von defineAttribute.h und Wert ( $pnAdj ) heraus.

da du das ganze mit einer for schleife durchgehst, kannst du auch 3 werte max wieder bekommen.

PHP Code:
for( $i = 0; $i < CRandomOptionProperty::GetRandomOptionSize( $nRandomOptItemId ); $i++ )
            {
                if( !
CRandomOptionProperty::GetParam( $nRandomOptItemId, $i, &$nDst, &$nAdj ) )
                    continue;
                
                if( 
$nAdj >= 0 )
                    
$str .= $nDst.' +'.$nAdj.$nStr;
                else
                    
$str .= $nDst.' -'.$nAdj.$nStr;
            } 
PS: Das ganze wird mit referenzen behandelt, da es einfacher zu handhaben ist.