CamCourse Problem

01/23/2009 20:44 aLasca#1
Also ich habe folgendes Problem

PHP Code:
#include <NomadMemory.au3>

;-Guild Wars Handle nehmen
$hWnd 
WinGetHandle("Guild Wars")

;-
Überprüfen ob Process Existiert
$PID 
WinGetProcess($hWnd)

;-
Prozess Memory Öffnen
Global $hprocess _MemoryOpen($PID)

;-
Course Wert
Global $Spawncam 3216361697

;-Memory Addresse für Course
Const $course IniRead("update.ini","SECTION 9-A","CAMCOURSE","Not found")

;-
Func Course auslesen
Func _readCourse
()
$read _memoryread($course$hprocess)
    
Sleep(1000)
    
InputBox("CourseTest""Your Course Value is:"$read)
EndFunc

Func _writeCourse
()
    
WinActivate("Guild Wars")
    
Sleep(6000)
    
    
_memorywrite($course$hprocess$Spawncam)
    
EndFunc


_writeCourse
() 
Wenn ich das so ausführe.. Also vorher halt den Coursewert ausgelesen und so.. dann stell ich mich in meine Gildenhalle mit dem ausgelesen Course. Drücke X (180° Drehung) und mache dann _writeCourse()

Irgendwie zeigt er ganz kurz die sicht vom angegeben Course, steht dann aber wieder in der Position in der er stand, nachdem X gedrückt wurde.
Kann da jemand helfen??
01/23/2009 21:01 NBA#2
Geht das schnell oder langsam? Also das zurueckspringen..
01/23/2009 21:04 aLasca#3
extrem schnell... so ähnlich wie ein instant controlsend(x)
01/23/2009 21:15 NBA#4
Oha...das ist ein problem...
01/23/2009 21:17 aLasca#5
Ja.. ich kann in meinem Script auch nicht wirklich nen Fehler entdecken :(
01/23/2009 21:18 _revo#6
is mir auch schon aufgefallen.
nachdem man sich mit x umgedreht hat funktioniert course ändern erstmal nicht merh ;)
01/23/2009 21:26 aLasca#7
Das Problem ist das Course bei mir so schon Probleme macht..:rolleyes:
01/23/2009 21:42 NBA#8
Habt ihr schonmal darueber nachgedacht, dass das client seide sein koennte?

Das sie evtl. eine Function eingebaut haben:
Code:
Wenn wert mehr als x mal ueberschrieben dann
                          wert.attribut = Schreibgeschuetzt
Beende wenn
Entschuldigt bitte diese sch**** Art zu erklaeren, das ist "Schulish" ...obwohl ich nicht weiss ob ich es richtig habe :D
01/23/2009 21:53 aLasca#9
Das würde dein Problem mit dem 8-10x auch erklären.. oder?

Kann mal jemand auskommentieren was man mit diesen Addressen hier machen kann?

PHP Code:
INVENTAR =                0xa02494
HERO 
=                    0xa02408
MMAP 
=                    0xa024e4
PARTY 
=                    0xa0255c
CHEST 
=                    0xa024a8
ALLBAG 
=                0xa024bc
GUILD 
=                    0xa02474
SKILL 
=                    0xa02430
TRADE 
=                    0xa026b0
PARTYSEARCH 
=                0xa02578
MERCHANT 

01/23/2009 21:57 kknb#10
ich gehe mal davon aus, das dir diese adressen sagen ob die jeweiligen fenster offen sind oder nicht.
01/23/2009 22:05 _revo#11
bzw sie geben die position an, musst halt noch entsprechende werte (die müssten irgendwo obendrüberstehen) dazuaddieren
01/23/2009 22:31 aLasca#12
Quote:
Originally Posted by kknb View Post
ich gehe mal davon aus, das dir diese adressen sagen ob die jeweiligen fenster offen sind oder nicht.
Ähm.. dann geben die aber komische werte zurück.. bei PARTY kam was 9stelliges raus
01/23/2009 22:49 Gabba2#13
Die geben die Position der Fenster zurück bzw. du kannst damit die Position ändern. Das sind die Adressen für den X Wert. +4=y, +8=sizex, +12=sizey. Float macht dabei mehr Sinn.
01/23/2009 23:05 aLasca#14
Ok danke
01/23/2009 23:33 __wadim#15
bei dem tastendruck von x wird offensichtlich etwas ausgelöst, dass der wert von course oder einem ähnlichem wert für eine gewisse zeit überschreibt, sodass dann ein möglicher konflikt auftrit und deswegen gw abstürzt.
versucht das mit einem anderem wert zu lösen, anstatt course.. gibt ne menge anderer.