(Anciennement fonction globale GetInvAt, désormais obsolète)
static InventoryItem* InventoryItem.GetAtScreenXY(int x, int y)
Retourne l'objet d'inventaire aux coordonnées d'ECRAN (X,Y). Notez que cette fonction
ne détecte que les objets d'inventaire contenus dans les fenêtres Inventaire personnelles
(qui s'affichent lorsque la fonction est appelée), et est prévue pour vous permettre
de proposer un GUI basé sur des verbes (“Utiliser Objet”,…) et autres du genre.
S'il n'y a aucune objet d'inventaire à cet endroit, ou que des coordonnées invalides ont
été spécifiées, retourne null .
NOTE : Les coordonnées sont celles de l'ECRAN, PAS celles de la PIECE.
Cela signifie que dans une pièce plus large que l'écran, les coordonnées que vous
passez sont relatives à la position actuelle de l'écran, et ne sont PAS les coordonnées
absolues de la pièce. Ceci signifie qu'il convient d'utiliser cette fonction avec les coordonnées
du curseur de la souris.
Exemple :
InventoryItem *item = InventoryItem.GetAtScreenXY(mouse.x, mouse.y); if (item == null) { Display("Aucun objet d'inventaire aux coordonnées de la souris."); } else { Display("Objet d'inventaire numéro %d à la positions de la souris.", item.ID); }
affichera le numéro de l'objet d'inventaire que la souris survole.
Voir Aussi : InventoryItem.Name,
Game.GetLocationName
(Anciennement GetInvProperty, désormais obsolète)
InventoryItem.GetProperty(string propriété)
Retourne la valeur de la propriété personnelle PROPRIETE pour l'objet d'inventaire.
Cette commande fonctionne avec les propriétés numériques (retourne un nombre), et avec
les propriétés booléennes (retourne 1 si la case est cochée, sinon 0).
Utilisez la fonction équivalente GetTextProperty pour récupérer une propriété textuelle.
Exemple :
if (inventory[1].GetProperty("Valeur") > 200) Display("La valeur de l'objet d'inventaire 1 est supérieure à 200 !");
affichera le message si la propriété “Valeur” de l'objet d'inventaire 1 est supérieure à 200.
Voir Aussi : InventoryItem.GetTextProperty
(Anciennement GetInvPropertyText, désormais obsolète)
(Anciennement InventoryItem.GetPropertyText, désormais obsolète)
String InventoryItem.GetTextProperty(string propriété)
Retourne la valeur de la propriété personnelle PROPRIETE pour l'objet d'inventaire.
Cette commande ne fonctionne qu'avec les propriétés textuelles. Le texte sera retourné
par cette fonction.
Utilisez la fonction équivalente GetProperty pour récupérer une propriété non textuelle.
Exemple :
String description = inventory[2].GetTextProperty("Description"); Display("Description de l'objet d'inventaire 2 : %s", description);
récupérera la “description” de l'objet d'inventaire 2 et l'affichera.
Voir Aussi : InventoryItem.GetProperty
(Anciennement IsInventoryInteractionAvailable, désormais obsolète)
InventoryItem.IsInteractionAvailable(CursorMode)
Vérifie si une interaction est prévue pour un clic sur l'objet d'inventaire avec le
mode de curseur MODE.
Cette fonction est très similaire à RunInteraction, mais au lieu de lancer les événements
correspondants, celle-ci retourne simplement 1 lorsque quelque chose se passerait, ou 0 lorsque
unhandled_event serait appelée.
Ceci est utile pour activer des choix dans un GUI basé sur les verbes, par exemple.
Exemple :
if (iPortecles.IsInteractionAvailable(eModeLook) == 0) Display("Regarder cet objet n'aurait aucun effet.");
Voir Aussi : IsInteractionAvailable,
InventoryItem.RunInteraction
(Anciennement RunInventoryInteraction, désormais obsolète)
InventoryItem.RunInteraction(CursorMode)
Lance le code associé à l'évenement correspondant dans la liste des interactions comme si
le joueur avait cliqué sur l'objet d'inventaire, en utilisant le mode de curseur MODE.
Exemple :
if (button == eMouseLeftInv) inventory[game.inv_activated].RunInteraction(mouse.Mode);
lancera l'interaction d'inventaire correspondant au mode de curseur actuel lorsque le joueur
cliquera sur l'objet (“Handle Inv Clicks” doit être activé pour que cela fonctionne).
Voir Aussi : InventoryItem.IsInteractionAvailable,
ProcessClick, Character.RunInteraction
int InventoryItem.CursorGraphic
Retourne/Définit le numéro de l'image utilisée comme curseur de l'objet d'inventaire. L'image servira de curseur lorsque cet élément est sélectionné dans l'inventaire.
NOTE : Cette propriété n'est utilisée que si vous avez activé “Use selected inventory graphic for cursor” (”Utiliser l'image de l'objet d'inventaire sélectionné comme curseur”) dans les General Settings (Réglages Généraux).
Exemple :
Display("L'image de curseur de la clef est l'image numéro %d", iClef.CursorGraphic);
affichera le numéro d'image curseur de l'ojbet d'inventaire iClef.
Compatibilité : Supporté par AGS 3.1.2 et versions ultérieures.
Voir aussi : InventoryItem.Graphic
(Anciennement GetInvGraphic, désormais obsolète)
(Anciennement SetInvItemPic, désormais obsolète)
int InventoryItem.Graphic
Retourne/Définit le numéro d'emplacement de la sprite (l'image) de l'objet d'inventaire.
Vous pouvez utiliser cela avec la propriété Object.Graphic pour donner l'effet que le joueur
'fait tomber' l'objet d'inventaire ; ou encore cette propriété peut être utile une fenêtre
d'inventaire dessinée avec les fonctions DrawingSurface.
NOTE : Pour des raisons de rétro-compatibilité, si vous changez cette propriété alors que CursorGraphic était définie à la même valeur (pointait sur la même image), alors CursorGraphic sera modifiée en conséquence.
Exemple :
int bloc = player.ActiveInventory.Graphic;
stockera le numéro de sprite de l'objet d'inventaire actuel du joueur dans la variable bloc.
Voir Aussi : InventoryItem.GetAtScreenXY,
InventoryItem.Name, InventoryItem.CursorGraphic
readonly int InventoryItem.IDRetourne le numéro d'identification de l'objet d'inventaire spécifié. Cela correspond au numéro figurant dans l'éditeur, et est utile pour utiliser des commandes comme Character.AddInventory, auxquelles il faut passer le numéro de l'objet d'inventaire à ajouter.
AddInventory(EGO, iPelle.ID);
utilise la commande obsolète AddInventory pour ajouter la pelle à l'inventaire de EGO.
Voir Aussi : Character.AddInventory,
Character.LoseInventory
(Anciennement GetInvName, désormais obsolète)
(Anciennement SetInvItemName, désormais obsolète)
(Anciennement InventoryItem.GetName, désormais obsolète)
(Anciennement InventoryItem.SetName, désormais obsolète)
String InventoryItem.Name;
Retourne/Définit le nom de l'objet d'inventaire. Ceci est le nom qui est
initialement définit dans la fenêtre “Inventory items” de l'Editeur AGS.
Vous pouvez changer cette propriété si par exemple vous voulez remplacer un 'bol'
par un 'bol rempli d'eau', sans pour autant utiliser un autre objet d'inventaire.
Notez que la longueur maximale du nom d'un objet d'inventaire est de 24 caractères - si
vous donnez un nom plus long, alors le texte sera tronqué.
Exemple :
Display("Objet d'inventaire actif : %s", player.ActiveInventory.Name);
affichera le nom de l'objet d'inventaire que le joueur utilise actuellement.
Voir Aussi : InventoryItem.GetAtScreenXY,
InventoryItem.Graphic,
Game.GetLocationName