1.29 Donner le focus à une fenêtre en actionscript 2

Inscrit
17 Avril 2016
Messages
2
J'aime
0
#1
Bonjour,
Je travaille actuellement sur un core Dofus Retro, et je pensais lui ajouter une option permettant de donner le focus automatiquement à la fenêtre du personnage commençant son tour de jeux en combat.

Malheureusement je n'ai pas trouvé le moyen en actionscript 2 de donner le focus à la fenêtre courante.

Du coup j'ai créé un programme dans un autre langage qui prends comme arguments le nom du personnage, et donne le focus à la fenêtre du même nom.

Malheureusement, je ne m’en suis rendu compte qu'après mais la seule fonction pour lancer un exécutable en as2 est “fscommand”, et ne permet pas de lancer un exécutable avec des arguments.

Finalement, je me suis servi d'électrons pour lancer mon exécutable avec comme argument le nom du personnage, malheureusement cela ne fonctionne que sur la version 64 bits de Dofus Retro.

La version 64 bits (électrons) de Dofus rétro est en plein de lag, Je ne m'en sers pas.
avez-vous une idée de la façon dont je peux procéder pour faire la même chose sur la version 32 bits ?
Peut-être une fonction existe-t-elle en actionscript 2 pour donner le focus à la fenêtre courante et que je n'ai tout simplement pas trouvé ?
 
Inscrit
23 Novembre 2018
Messages
30
J'aime
20
#2
Yop,

J'ai eu la même réflexion que toi il y a quelques jours, je pense que le mieux pour l'instant c'est d'attendre la sortie de dofus avec la collab de remastered, on aura surement un client propre sans lags et avec electron.
A partir de là on pourra l'améliorer
 
Inscrit
26 Janvier 2016
Messages
24
J'aime
4
#3
Si le probleme est le nom du personnage sur la fenetre rien n empeche de rennomer la fenetre via un autre language , j ai un petit script c# qui m ouvre mes fen dofus 32bit et me les nommes
 
Inscrit
5 Novembre 2016
Messages
41
J'aime
0
#4
Et si tu appelles ton script via un REST ? Tu laisses un deamon tourné, cette APi REST appellera ton script en lui donnant le nom du personnage comme paramètre
 
Inscrit
25 Février 2012
Messages
183
J'aime
53
#5
Une idée assez loin: Tu peux aussi faire un MITM, au moment au tu reçois GTS tu focus la fenêtre du client. Bien sûr faut lier chaque connexion avec un processId mais c'est simple à faire. Comme ça tu touches pas au core ^^
 
Inscrit
3 Avril 2011
Messages
26
J'aime
6
#6
Une idée assez loin: Tu peux aussi faire un MITM, au moment au tu reçois GTS tu focus la fenêtre du client. Bien sûr faut lier chaque connexion avec un processId mais c'est simple à faire. Comme ça tu touches pas au core ^^
Je pense que c'est encore plus simple que modifier le core.
 
Inscrit
17 Avril 2016
Messages
2
J'aime
0
#8
Merci à tous pour vos réponses.

J'ai réussi à faire ce que je voulais avec fscommand finalement,
j'ai fais un programme qui me créer un script batch pour chaque personnage connecté.

nom_du_perso.bat
Code:
start /D "C:\......\retroclient\fscommand" autoFocus.exe nom_du_perso
Que je peux ensuite lancer directement avec fscommand via le core.

Une idée assez loin: Tu peux aussi faire un MITM, au moment au tu reçois GTS tu focus la fenêtre du client. Bien sûr faut lier chaque connexion avec un processId mais c'est simple à faire. Comme ça tu touches pas au core ^^
L'idée du man in the middle me séduit bien, je n'ai jamais fait ça, j'essaierai d'en faire un demain je pence, Ça peut être sympa pour automatiser quelques actions plus facilement que via le core :)
 
Haut Bas