Bonjour à tous
Effectivement j'ai aussi fait des test avec ChatGPT
Il faut etre assez précis dans ce qu'on demande et meme préciser si on souhaite utiliser Moose For DCS ou Mist car il proposera du code lua adapté ... et oui !!!
exemple :
Ce script utilise la fonction Group.getByName pour récupérer le groupe à réinitialiser en utilisant son nom. Ensuite, il vérifie si le groupe existe et récupère la position de son premier unité en utilisant la méthode getPosition(). Il détruit ensuite le groupe en utilisant la méthode destroy().
Le script recrée ensuite le groupe à sa position d'origine en utilisant la fonction coalition.addGroup. Le nouvel objet de groupe est créé avec les mêmes paramètres que l'ancien groupe, à l'exception de sa position qui est définie à la position d'origine récupérée précédemment.
Enfin, le script utilise la fonction trigger.action.outText pour afficher un message de confirmation dans DCS. Si le groupe n'a pas été trouvé, un message d'erreur est affiché à la place.
Regenerate response
-- Nom du groupe à détruire
local groupName = "Mon groupe SA-10"
trigger.action.outText(groupName, 100)
-- Récupération du groupe à détruire
local group = Group.getByName(groupName)
trigger.action.outText(group, 100)
-- Vérification que le groupe existe
if group then
-- Récupération des informations sur le modèle de groupe
local modelGroup = Group.getByName("Model SA10")
local modelUnits = {}
if modelGroup then
for _, unit in pairs(modelGroup:getUnits()) do
table.insert(modelUnits, {
name = unit:getName(),
position = unit:getPosition().p,
orientation = unit:getPosition().x,
type = unit:getTypeName(),
canCargo = unit:getDesc().attributes.Cargo and true or false
})
trigger.action.outText("Le groupe modèle a été trouvé", 5)
end
else
-- Si le groupe modèle n'existe pas, on affiche un message d'erreur et on quitte le script
trigger.action.outText("Le groupe modèle n'a pas été trouvé", 5)
return
end
-- Récupération de la position du groupe à détruire
local groupPos = group:getUnit(1):getPosition().p
-- Destruction du groupe à détruire
trigger.action.outText(" avant le destroy la variable groupe: " ..groupName, 10)
group:destroy()
-- Recréation du groupe modèle sur l'ancien emplacement du groupe à détruire
local newGroup = coalition.addGroup(modelGroup:getCoalition(), modelGroup:getCategory(), modelUnits, groupPos)
-- Affichage d'un message pour indiquer que le groupe a été recréé
trigger.action.outText("Le groupe a été recréé", 5)
else
-- Si le groupe à détruire n'existe pas, on affiche un message d'erreur et on quitte le script
trigger.action.outText("Le groupe à détruire n'a pas été trouvé", 5)
return
end
-- Récupération du groupe à détruire
local groupToDestroy = Group.getByName("Mon groupe SA-10")
-- Vérification que le groupe existe bien
if groupToDestroy then
-- Destruction du groupe
groupToDestroy:destroy()
-- Duplication du groupe de remplacement
local replacementGroup = Group.getByName("Model SA10")
if replacementGroup then
-- Récupération de la position de l'ancien groupe
local oldPosition = groupToDestroy:getUnit(1):getPosition().p
-- Déplacement du groupe de remplacement sur l'ancienne position
replacementGroup:destroy()
local newGroup = coalition.addGroup("red", Group.Category.GROUND, replacementGroup:getUnits(), oldPosition)
-- Renommage du groupe pour qu'il corresponde au nom de l'ancien groupe détruit
newGroup:setName("Mon groupe SA-10")
end
end
Mais il y a des erreures à l'execution