Bonjour...désolé de revenir ici tous les trois jours pour vous poser de nouvelles questions.
Je tiens tout de même à vous dire que je bosse sur mon projet AGS depuis une semaine à presque plein temps, et j'ai presque systématiquement trouvé les réponses à mes problèmes sur ce forum, donc merci.
Cependant, une fois de plus, un nouveau détail me taraude. Je voudrais faire en sorte que, lorsque le joueur utilise un objet de son inventaire (curseur changé en objet) le clic droit permette de désélectionner l'objet.
Ca ne semble pas un problème insoluble, pourtant, il doit me manquer la toute petite commande qui le permet, et je ne l'ai pas trouvé dans les commandes de script (ma nouvelle bible) présentes sur le forum.
J'ai déja modifié le Globalscript de manière à ce que le clic gauche fasse marcher/intéragir/utiliser objet de l'inventaire, et pour que le clic droit fasse regarder. Mais je ne trouve pas la commande pour lui faire plutôt lâcher l'objet s'il se trouve à la place du curseur.
Mon Globalscript ressemble à ça (J'ai supprimé pour plus de clarté les lignes qui ne concernaient pas mon problème...il y a peut-être des erreurs de script dans l'extrait, mais il n'y en a pas dans mon Globalscript) :
- Code:
-
function on_mouse_click(MouseButton button) {
if (IsGamePaused() == 1) {
}
else if (button == eMouseLeft)
{
if (player.ActiveInventory!=null)
{
ProcessClick(mouse.x, mouse.y, eModeUseinv);
}
else
{
ProcessClick(mouse.x, mouse.y, eModeInteract);
ProcessClick(mouse.x, mouse.y, eModeWalkto);
}
}
else if (button == eMouseRight || button == eMouseWheelSouth)
{
if (player.ActiveInventory!=null)
{
cEgo.Say("Pour l'instant je dois aller désactiver l'objet dans l'inventaire.");
}
else
ProcessClick(mouse.x, mouse.y, eModeLookat);
}
En toute logique, la commande manquante doit se trouver à la place de la ligne " cEgo.Say("Pour l'instant je dois aller désactiver l'objet dans l'inventaire.");"
J'ai essayé avec des commandes telles que mouse.Mode=eModeWalkto; ou mous.Mode=eModeInteract, l'objet disparait bien pour être remplacé par le curseur en question, mais les interactions sont toujours celles de l'objet (comme s'il était toujours utilisé). Et j'avoue ne pas avoir d'autres idées.
Voilà, ca ne doit pas être grand chose, peut-être même suis-je proche de la solution, mais je n'arriverais pas à la trouver tout seul.