Aïe !… Ta réponse pointe une évidence qui se profilait déjà dans mon esprit : Le synoptique de mon projet n'est pas au point (pour ne pas dire très mal foutu !!), puisque j'ai :
unit MonUnitePrincipale;
uses
MonUniteSecondaire;
components
WoodKeys : TWoodKeys;
object TWoodKeys
name 'Clé';
image 'WoodKey';
//...
case Player.Tag of
//...
15: Management15(Master, Context);
//...
End.
Et dans mon unité secondaire :
unit MonUniteSecondaire;
//...
procedure Management15(Master : TMaster; Context : TMoveContext);
begin
Player.WoodKeys :=0; //---(ici erreur de compil' car "WoodKeys" non déclaré !)
//...
end;
//...
End.
Puisque nous sommes dans une section
Débutants :
Surtout NE PAS déclarer l'unité principale dans un
uses de l'unité secondaire : Crash de l'éditeur assuré !! Il n'aime pas du tout que 2 unités soient déclarées mutuellement !!
Alors, ma soluce :
Créer une 3ème unité, MonUniteDuMaterielPourMonProjet, où sera créé l'outil WoodKey, et déclarer cette unité dans les
uses de l'unité principale et de l'unité secondaire !..
Ce qui nous donne :
Unité principale :
unit MonUnitePrincipale;
uses
MonUniteSecondaire, MonUniteDuMaterielPourMonProjet;
//...
case Player.Tag of
//...
15: Management15(Master, Context);
//...
//...
End.
Unité secondaire :
unit MonUniteSecondaire;
uses
MonUniteDuMaterielPourMonProjet;
//...
procedure Management15(Master : TMaster; Context : TMoveContext);
begin
Player.WoodKeys :=0;
//...
end;
//...
End.
Et donc la 3ème unité pour le matos :
unit MonUniteDuMaterielPourMonProjet;
components
WoodKeys : TWoodKeys;
WoodKey : TObjectTool
ObjectDef : WoodKeys;
FindMessage : '';
end;
//...
object TWoodKeys
name 'Clé';
image 'WoodKey';
//...
end;
//...
End.
Et tout rentre dans l'ordre : Je peux “utiliser” les WoodKeys depuis l'unité principale et secondaire !!!..
Bon, un peu long à expliquer pour si peu, mais peut-être cela servira-t-il à quelqu'un !!?..