0 Members and 2 Guests are viewing this topic.
picto a écrit:Pourquoi pas des Payloads compatibles avec le cargo du DGIV.;
picto a écrit:Vi .... ça se dessinne.J'ai quand même envie que ce soit un peu SF .... pas trop quand même ...
InitBascule(ANTENNA_POINT,2324,34,345,FALSE,PANEL0);InitBascule(TRAIN_ON,343,334,445,TRUE,PANEL1);
SetValueBascule(MECHANICAL_GEAR,FALSE);SetValueSelecteur(PROBES_DOOR5,TRUE);
void SetValueBascule(int NoBouton,BOOL Etat){ // controle validité de tout parametres if(NoBouton<0||NoBouton>FIN_BOUTON_BASCULE-1||Etat>1||Etat<0) return; Bascule[NoBouton].Etat=Etat; oapiTriggerRedrawArea(Bascule[NoBouton].NoPanel,AID_BOUTON+NoBouton);}
picto a écrit: C'est le pied en Runtime !!! Suffit de mettre le son dans la fonction en prime et on a plus à s'occuper de rien !!! SetEtatDiode(DIODE_CHECK_ELEC, true);
InitBascule(ANTENNA_POINT... FALSE, PANEL0); InitBascule(TRAIN_ON,... TRUE, PANEL1); InitBascule(ANTENNA_POINT,... FALSE, PANEL0); InitBascule(TRAIN_ON,... TRUE, PANEL1); InitBascule(ANTENNA_POINT,... FALSE, PANEL0); SetBoutonClick(ANTENNA_POINT,13456);InitBascule(ANTENNA_POINT,... FALSE, PANEL0); Bascule[ANTENNA_POINT].Freq=13456;InitBascule(ANTENNA_POINT,... FALSE, PANEL0); Bascule[ANTENNA_POINT].NoSound=PETITCLICK;InitBascule(TRAIN_ON,... TRUE, PANEL1);
// declaration:void InitBascule(...., int Frequence=11000,int NoSon=PETITCLICK); //utilisation normale, prend les params par defaut de la declaration:InitBascule(TRAIN_ON,... TRUE, PANEL1); // alternativement change les params par defaut:InitBascule(TRAIN_ON,... TRUE, PANEL1,13456,PETICLICK);
void InitBascule(...., int Frequence=11000,int NoSon=PETITCLICK);
picto a écrit:Bonne idée ... mais que veux tu dire ?Un son légèrement différent par type de boutons identiques ?Ou un son par type de boutons ? Si c'est le second cas, il y a encore plus simple.
Sinon faudra des bouton pour le haut et le bas...
picto a écrit:J'ai l'impression qu'il vaut mieux séparer les boutons qui font ce genre de gymnastique sur une ressource à part.
encôôôre un parametre pour initbuton
if(MOUSE_RIGHT){ Position=min(Position+1,3); // 3 c'est la limite maximum que peut prendre position.}if(MOUSE_LEFT){ Position=max(Position-1,-3); // -3 c'est la limite minimum que peut prendre position.}
void SetVolume(int Volume){ if(Volume<0||Volume>255 return;}
void SetVolume(int Volume){ Volume=max(min(Volume,255),0); // volume sera obligatoirement >=0 et <=255 }
void SetVolume(int Volume){ Volume=min(Volume,255); // corrige a 255 si plus grand Volume=max(Volume,0); // corrige a 0 si plus petit }
case AID_BOUTON_SELECTEUR + SELECTPROBE: if (event & PANEL_MOUSE_LBDOWN && Selecteur[SELECTPROBE].Etat>Ant90Deg ) { Selecteur[SELECTPROBE].Etat--; SetEtatSelecteur(SELECTPROBE,Selecteur[SELECTPROBE].Etat); } if (event & PANEL_MOUSE_RBDOWN && Selecteur[SELECTPROBE].Etat<Hor125Deg) { Selecteur[SELECTPROBE].Etat++; SetEtatSelecteur(SELECTPROBE,Selecteur[SELECTPROBE].Etat); } return true;
case AID_BOUTON_SELECTEUR + ELECTRICAL_SELECT_POWER: if (event & PANEL_MOUSE_LBDOWN && Selecteur[ELECTRICAL_SELECT_POWER].Etat==Ant90Deg ) { Selecteur[ELECTRICAL_SELECT_POWER].Etat=Ant125Deg; SetEtatSelecteur(ELECTRICAL_SELECT_POWER,Selecteur[ELECTRICAL_SELECT_POWER].Etat); } else if (event & PANEL_MOUSE_LBDOWN && Selecteur[ELECTRICAL_SELECT_POWER].Etat==Ant125Deg ) { Selecteur[ELECTRICAL_SELECT_POWER].Etat=Cent80Deg; SetEtatSelecteur(ELECTRICAL_SELECT_POWER,Selecteur[ELECTRICAL_SELECT_POWER].Etat); } else if (event & PANEL_MOUSE_LBDOWN && Selecteur[ELECTRICAL_SELECT_POWER].Etat==Cent80Deg ) { Selecteur[ELECTRICAL_SELECT_POWER].Etat=Hor125Deg; SetEtatSelecteur(ELECTRICAL_SELECT_POWER,Selecteur[ELECTRICAL_SELECT_POWER].Etat); } else if (event & PANEL_MOUSE_RBDOWN && Selecteur[ELECTRICAL_SELECT_POWER].Etat==Hor125Deg ) { Selecteur[ELECTRICAL_SELECT_POWER].Etat=Cent80Deg; SetEtatSelecteur(ELECTRICAL_SELECT_POWER,Selecteur[ELECTRICAL_SELECT_POWER].Etat); } else if (event & PANEL_MOUSE_RBDOWN && Selecteur[ELECTRICAL_SELECT_POWER].Etat==Cent80Deg ) { Selecteur[ELECTRICAL_SELECT_POWER].Etat=Ant125Deg; SetEtatSelecteur(ELECTRICAL_SELECT_POWER,Selecteur[ELECTRICAL_SELECT_POWER].Etat); } else if (event & PANEL_MOUSE_RBDOWN && Selecteur[ELECTRICAL_SELECT_POWER].Etat==Ant125Deg ) { Selecteur[ELECTRICAL_SELECT_POWER].Etat=Ant90Deg; SetEtatSelecteur(ELECTRICAL_SELECT_POWER,Selecteur[ELECTRICAL_SELECT_POWER].Etat); } return true;
picto a écrit:Peut être pour conserver leur boulot et se rendre indispensables !Va savoir, j'ai souvent soupçonné ça chez les "professionnels"
Pour les degrés de rotation, c'est juste un moyen mnémotechnique pour moi.J'ai du mal à me souvenir si 0 est le dessin du sélecteur qui indique le hautou le bas ... etc ... donc 0 degre vers le haut et le reste suit.
case AID_BOUTON_SELECTEUR + SELECTPROBE: if (event & PANEL_MOUSE_LBDOWN && Selecteur[SELECTPROBE].Etat>0 ) { Selecteur[SELECTPROBE].Etat--; SetEtatSelecteur(SELECTPROBE,Selecteur[SELECTPROBE].Etat); } if (event & PANEL_MOUSE_RBDOWN && Selecteur[SELECTPROBE].Etat<5) { Selecteur[SELECTPROBE].Etat++; SetEtatSelecteur(SELECTPROBE,Selecteur[SELECTPROBE].Etat); } return true;
case AID_BOUTON_SELECTEUR + SELECTPROBE: // PROBE: 0= arme 1=engagé 2=ignition 3=ouverture 4=release 5=neutralise if (event & PANEL_MOUSE_LBDOWN && Selecteur[SELECTPROBE].Etat>0 ) { .....