Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Jeux, jouets et Lego : le deuxième à ...
Voir le deal

 

 Souci avec les modes curseurs

Aller en bas 
4 participants
AuteurMessage
neutrinos
Cliqueur Amateur
Cliqueur Amateur
neutrinos


Nombre de messages : 219

Localisation : Nébuleuse du Crabe

Date d'inscription : 30/08/2006


Souci avec les modes curseurs Empty
MessageSujet: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyJeu 22 Mar 2007 - 13:35

Asraroth

J'ai tourjours pas réussi à règlé le problème avec les modes curseurs en faite tout fonctionne bien, sauf que quand je vais dans l'inventaire pour réccupérer un objet ça ne répond pas ???

Si tu-as le temps pourrais tu y regarder merci. ☀
Revenir en haut Aller en bas
Asraroth
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Asraroth


Nombre de messages : 1450

Age : 49

Date d'inscription : 20/10/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyJeu 22 Mar 2007 - 14:10

Sans le script, pas facile de voir le problème :scratch:
Je ne sais pas comment tu gères tes items d'inventaire...

Tu peux essayer cette technique :
- dans les Game Options, dans la partie Inventory, coche la case "Handle inventory clicks in script".
- sur chaque objet de l'inventaire, dans "Interact inventory item", rajoute un script avec
Code:
  character[EGO].ActiveInventory = ixxxxx;
xxxx étant le script-O-Name de l'objet

Essaye de faire çà avec quelques objets pour voir si çà marche, avant de te lancer dans un gros chantier de script fastidieux clin d'oeil
Revenir en haut Aller en bas
neutrinos
Cliqueur Amateur
Cliqueur Amateur
neutrinos


Nombre de messages : 219

Localisation : Nébuleuse du Crabe

Date d'inscription : 30/08/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyJeu 22 Mar 2007 - 16:20

J'ai testé toujours pareil, dès que je vais dans l'invenvaire je ne peux pas récupérer l'objet, ça bloque à ce niveau là, je crois je vais laisser tomber.


int modesouris;
modesouris = mouse.Mode;
if (GetLocationType(mouse.x,mouse.y) == eLocationNothing) {
modesouris = 0;
}
if (GetLocationType(mouse.x,mouse.y) == eLocationHotspot) {
Hotspot *HP = Hotspot.GetAtScreenXY(mouse.x , mouse.y);
modesouris = HP.GetProperty("ACTION");
}
if (GetLocationType(mouse.x,mouse.y) == eLocationObject) {
Object *OB = Object.GetAtScreenXY(mouse.x, mouse.y);
modesouris = OB.GetProperty("ACTION");
}
if (GetLocationType(mouse.x,mouse.y) == eLocationCharacter) {
Character *CH = Character.GetAtScreenXY(mouse.x, mouse.y);
modesouris = CH.GetProperty("ACTION");
}

if (modesouris != mouse.Mode) mouse.Mode = modesouris;
Revenir en haut Aller en bas
Asraroth
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Asraroth


Nombre de messages : 1450

Age : 49

Date d'inscription : 20/10/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyJeu 22 Mar 2007 - 18:25

Ne laisse pas tomber !!!... et je pense avoir compris

essaye de remplacer çà :
Code:
if (GetLocationType(mouse.x,mouse.y) == eLocationNothing) {
  modesouris = 0;
}

par çà :
Code:
if (GetLocationType(mouse.x,mouse.y) == eLocationNothing) {
  modesouris = 0;
  InventoryItem *II = InventoryItem.GetAtScreenXY(mouse.x, mouse.y); 
  if (II != null) modesouris = eModeInteract;
}

Quand on passe le curseur sur un item de l'inventaire, la fonction GetLocationType renvoie un "eLocationNothing" (= rien de spécial)
Donc il faut tester si c'est un item (le pointeur II va recuperer l'adresse en mémoire de l'item qui se trouve sous la souris, si item il y a)
S'il n'y a pas d'item sous la souris, le pointeur aura la valeur "null", sinon il y aura une adresse (peu importe laquelle) et dans ce cas, on passe le mode de la souris à Interaction.
Revenir en haut Aller en bas
Asraroth
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Asraroth


Nombre de messages : 1450

Age : 49

Date d'inscription : 20/10/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyJeu 22 Mar 2007 - 18:50

Je viens de penser que ce systeme en l'état, a un gros inconveniant (tu viens d'en faire les frais avec les objets de l'inventaire, mais c'est pas tout).
Si le joueur doit utiliser un autre pointeur que celui par defaut, çà va être dur... S'il change le mode du curseur, le prog va remettre le curseur par defaut environ 40 fois par seconde.
J'ai peut-être une idée pour regler ce problème... je dois y reflechir encore un peu :scratch:
Revenir en haut Aller en bas
neutrinos
Cliqueur Amateur
Cliqueur Amateur
neutrinos


Nombre de messages : 219

Localisation : Nébuleuse du Crabe

Date d'inscription : 30/08/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyJeu 22 Mar 2007 - 19:03

Oui effectivement ça fonctionne toujours pas le curseur se change et l'item
clignote très rapidement quand je click dessus.

Ok merci pour ta patience.
Revenir en haut Aller en bas
neutrinos
Cliqueur Amateur
Cliqueur Amateur
neutrinos


Nombre de messages : 219

Localisation : Nébuleuse du Crabe

Date d'inscription : 30/08/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyDim 25 Mar 2007 - 19:30

Tu-as trouvé une solution???
Revenir en haut Aller en bas
Asraroth
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Asraroth


Nombre de messages : 1450

Age : 49

Date d'inscription : 20/10/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyMer 28 Mar 2007 - 13:53

oups ! desolé... je m'etais mis à autre chose, et je viens seulement de voir ton message.

Je me remets sur le problème ! :study:
Revenir en haut Aller en bas
Asraroth
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Asraroth


Nombre de messages : 1450

Age : 49

Date d'inscription : 20/10/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyMar 10 Avr 2007 - 14:36

Voila un petit algo pour mieux gerer les modes de la souris...

Dans le script de la room, declaration des variables
Code:
Object* OO;
Object* OB;
Hotspot* OH;
Hotspot* HP;
Character* OC;
Character* CH;

et dans le Repeatedly_execute de la room :

Code:
int modesouris;
modesouris = mouse.Mode;
if (GetLocationType(mouse.x,mouse.y) == eLocationNothing) {
   SetGlobalInt(100, 0);
  modesouris = 0;
}
if (GetLocationType(mouse.x,mouse.y) == eLocationHotspot) {
  HP = Hotspot.GetAtScreenXY(mouse.x ,  mouse.y);
  modesouris = HP.GetProperty("ACTION");
  SetGlobalInt(100 ,  1);
}
if (GetLocationType(mouse.x,mouse.y) == eLocationObject) {
  OB = Object.GetAtScreenXY(mouse.x, mouse.y);
  modesouris = OB.GetProperty("ACTION");
  SetGlobalInt(100 ,  2);
}
if (GetLocationType(mouse.x,mouse.y) == eLocationCharacter) {
  CH = Character.GetAtScreenXY(mouse.x,  mouse.y);
  modesouris = CH.GetProperty("ACTION");
  SetGlobalInt(100 ,  3);
}
if (modesouris != mouse.Mode) {
  if (((GetGlobalInt(100) == 1) && (OH != HP)) || ((GetGlobalInt(100) == 2) && (OO != OB)) || ((GetGlobalInt(100) == 3) && (OC != CH)) || (GetGlobalInt(100) != GetGlobalInt(101))) {
    mouse.Mode = modesouris;
      if (GetGlobalInt(100) == 1) OH = HP;
      if (GetGlobalInt(100) == 2) OO = OB;
      if (GetGlobalInt(100) == 3) OC = CH;
    SetGlobalInt(101, GetGlobalInt(100));
  }
}

Ca utilise les variables Globales 100 et 101... donc faudra p-e les changer si tu les utilisais déjà.

Le principe, c'est qu'on force le mode de la souris preferé que si on a changé d'objet/hotspot. Si la souris pointe toujours le même objet, on fait rien... donc le joueur peut changer le mode lui-même.

J'espère que çà te conviendra... @+ clin d'oeil
Revenir en haut Aller en bas
MilesMando
Cliqueur Amateur
Cliqueur Amateur
MilesMando


Nombre de messages : 310

Age : 43

Localisation : Paris

Date d'inscription : 08/08/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyMar 10 Avr 2007 - 16:12

ça m'apprend des trucs , merci!
Revenir en haut Aller en bas
neutrinos
Cliqueur Amateur
Cliqueur Amateur
neutrinos


Nombre de messages : 219

Localisation : Nébuleuse du Crabe

Date d'inscription : 30/08/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyMar 10 Avr 2007 - 16:52

Merci Asraroth je vais testé.
Revenir en haut Aller en bas
neutrinos
Cliqueur Amateur
Cliqueur Amateur
neutrinos


Nombre de messages : 219

Localisation : Nébuleuse du Crabe

Date d'inscription : 30/08/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyMar 10 Avr 2007 - 17:40

Tout fonction très bien encore merci Asraroth :cheers:
Revenir en haut Aller en bas
Shai-la
Ouvrière en Chef de la Grande Tasse Bleue
Ouvrière en Chef de la Grande Tasse Bleue
Shai-la


Nombre de messages : 6018

Age : 45

Localisation : Montpellier

Date d'inscription : 17/04/2006


Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs EmptyMar 10 Avr 2007 - 18:40

Asraroth, le roi du script ! :queen:
Revenir en haut Aller en bas
http://marionpoinsot.fr/video
Contenu sponsorisé





Souci avec les modes curseurs Empty
MessageSujet: Re: Souci avec les modes curseurs   Souci avec les modes curseurs Empty

Revenir en haut Aller en bas
 
Souci avec les modes curseurs
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Problème de curseurs
» Modes de curseur
» souci avec mon personnage
» souci avec walkable area

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Adventure Games Studio fr :: CREATION DE JEUX :: Questions / Réponses-
Sauter vers: