Player problem in a tank that shoots twice

Hello everyone.
here is my problem.

my player equipped with a weapon enters a tank, but when my player shoots, the tank's barrel and my player's weapon
shoot at the same time. (two fold)
I use the advanced tank from game components.
the turret lazer fires double as well.
I would like my player equipped with his weapon to be able to enter a tank, and shoot with the barrel of the tank only.
and when the player exits the tank, he recovers his weapon.
How to solve this problem?

thanks in advance for your solutions...

Bonjours a tous.
voici mon problème.

mon joueur équipé d'une arme entre dans un tank, mais lorsque mon joueur tire, le canon du tank et l'arme de mon joueur
tire en meme temps. (en double)
j'utilise le tank avancé du composants de jeu.
le lazer turret tire en double également.
je voudrai que mon joueur équipé de son arme puisse entrer dans un tank, et tirer avec le canon du tank uniquement.
et lorsque le joueur sort du tank, il récupère son arme.
comment résoudre ce problème?

merci d'avance pour vos solutions...

Damageable Objects by Mokazar - Core Games test ca si ca marche, c'est dispo aussi sur le cc ( community content ) les tourelles sont des tank de base, faut juste retrouver dedans quel script a etait modifié j'men souviens plus.
try this if it works, it's also available on the cc (community content) the turrets are basic tanks, you just have to find out which script was modified in it, I don't remember.

thank you so much for your reply.
I followed your advice but it still doesn't work.
what is very weird is that even when creating a new project with a single player equipped with an "advanced weapon" and installing
the "damaged objects by mokazar" from the "community content", I import the truck into the "scene", then I enter the truck. I left click and there,
curiously the player shoots while being inside the truck which is not armed !!. whether it is a tank, a turret or any other vehicle it produces the same effect.
I noticed that when I import the "advanced tank" from the content core into my "scene", I go inside the tank with my player still equipped with his "advanced weapon",
then I make a shot (left click) every two seconds, it works, but if I shoot quickly the weapon starts to fire and the barrel too!!
for the experiment I also tried another solution which consists in inserting in the trigger of the "laser turret" a script coming from the "community content" called:
"Unequip Volume" by aj. so when the character enters the laser cannon, the "advanced weapon" no longer fires and the cannon fire works alone, normally.
but when the player exits the cannon he does not recover his "advanced weapon".
and it makes the "advanced weapon" disappear as well as the costume which is another problem considering that in my project the players have custom costumes.
I tried to modify in the hierarchy the "custom" options of "UnequipVolume" by checking and unchecking the boxes "RemoveEquipment" and "RemoveAttachedObjects"
but no way..grrrr....
I am not a specialist in lua code but I think that the "UnequipVolumeScriptServer" script should be modified and adapted
excerpt from the "Unequip Volume" module by aj.
the pattern would be: "enter with advanced weapon" "stop advanced weapon" "then barrel priority" "exit barrel and recover advanced weapon".
What do you think?

merci mokazar pour ta réponse.
j'ai suivi tes conseils mais cela ne fonctionne toujours pas.
ce qui est très bizarre, c'est que meme en créant un nouveau projet avec un seul joueur equipé d'une "arme avançée" et installer
le "damageable objects by mokazar" du "community content", j'importe dans la "scène" le camion, puis je rentre dans le camion. je fais un click gauche et la,
curieusement le joueur tire tout en étant à l'intérieur du camion qui n'est pas armé!!.que ce soit un tank, une tourelle ou tout autre vehicules ça produit le meme effet.
j'ai remarquer que quand j'importe dans ma "scene" le "tank avançé" du core content, je rentre à l'intérieur du tank avec mon joueur toujour équipé de son arme avançée,
puis je fais un tir (click gauche) toutes les deux secondes, cela fonctionne, mais si je tire rapidemment l'arme se met a tirer et le canon aussi!!
pour l'experience j'ai également essayé une autre solution qui consiste à insérer dans le trigger du "laser canon" un script provenant du "community content" appelé:
"Unequip Volume" by aj. donc au moment ou le personnage entre dans le laser canon, l'arme avançée ne tire plus et le tire du canon fonctionne seul,normalement.
mais quand le joueur sort du canon il ne récupère pas son arme avançée.
et il fait disparaitre l'arme avançé ainsi que le costume ce qui est un autre probleme vu que dans mon projet les joueur on des costumes personnalisés.
j'ai essayé de modifier dans la hiérarchie les options "custom" de "UnequipVolume" en cochant et décochant les cases "RemoveEquipment" et "RemoveAttachedObjects"
mais pas moyen..grrrr....
je ne suis pas un specialiste du code lua mais je pense qu'il faudrait modifier et adapter le script "UnequipVolumeScriptServer"
extrait du module "Unequip Volume" by aj.
le schéma serait:"entrer avec arme avançée" "arreter arme avançée" "puis priorité au canon" "sortie du canon et récupération de l'arme avançée".
qu'en pense tu?

Locate the server script inside the tank VehicleDriverAttachToObjectServer and open it.
Add the following functions to the bottom of the file:

function DisableWeapons(player)
	local weapons = {}
	for _,w in ipairs(player:GetEquipment()) do
		if w:IsA("Weapon") then
			if Object.IsValid(w) then
				w.visibility = Visibility.FORCE_OFF
				table.insert(weapons, w)
	player.serverUserData.previousWeapons = weapons

function EnableWeapons(player)
	if not Object.IsValid(player) then return end
	if not player.serverUserData.previousWeapons then return end
	for _,w in ipairs(player.serverUserData.previousWeapons) do
		if Object.IsValid(w) then
			w.visibility = Visibility.INHERIT
	player.serverUserData.previousWeapons = nil

Then, you need you call DisableWeapons(player) and EnableWeapons(player) at the appropriate moments. You do that by adding those texts inside the functions OnVehicleEntered() and OnVehicleExited(), respectively (as new lines, above the closing end). In other words, at lines 38 and 46, if the script is un-changed as it appears currently in Core Content. The logic here is that, when the player enters the vehicle all weapons are disabled and saved in memory for later. When the player exits the vehicle, the memorized weapons are restored.

You're almost done. However, some weapons are automatically destroyed when they become unequipped. You need to modify those weapons (depends what weapons you are using, need to test them). This is usually the case if there is a Pickup Trigger object. In that case, delete the pickup trigger and apply the changes to the template. If you were depending on the pickup trigger to equip the player you need another approach to equip weapons-- the default pickup trigger is a basic functionality that comes with its advantages and disadvantages. You can, for example, use the Static Player Equipment component and assign the weapon to that, or some larger inventory system such as you can find in the frameworks or in CC.

Thank you standardcombo for this information.
I therefore followed your explanations and applied the script, good news it works but
only with "simple weapons", "advanced weapons" do not work.
after multiple tries, I found and imported from the "community content" the "weapon inventory with items" of "Blackdheart"
I then modified the weapons offered by my custom weapons (which are advanced weapons) and there, it works.
except the assignment for the team pick.

the player is equipped with a custom costume (made with the "mannequin gal" from "Sobchak" in the "community content")
the player is equipped with 3 weapons thanks to the weapons menu (made with the "weapon inventory with items" of "Blackdheart" in the "community content")
so for now the player is able to enter the tank, shoot the cannon alone and when he exits he keeps his costume and gets the weapon menu,
just roll the mouse wheel. great, let's move forward...

I have three other problems:

the 1st: how to create a personalized weapon menu for each team. (1 and 2)
there are no assignment options for team choice in the "weapon inventory with items" of "Blackdheart"
(the 2 teams have the same weapons).

the 2nd: how to do so that: when the player is in the tank he can suffer damage when shot at.
(player who can be killed in the tank without destroying the tank)

le3ème: how to limit the angle of fire of the cannon of the tank to 90° instead of 360° and also in height.

Thanks a lot,

Merci standardcombo pour ces informations.
j'ai donc suivi vos explications et appliquer le script, bonne nouvelle cela fonctionne mais
uniquement avec des armes simples, les armes avançées ne fonctionne pas.
après de multiples essais, j'ai trouvé et importé du "community content" le "weapon inventory with items"de "Blackdheart"
j'ai ensuite modifier les armes proposés par mes armes personnalisées (qui sont des armes avançées) et là, cela fonctionne.
sauf l'assignation pour le choix de l'équipe.

le joueur est équipé d'un costume personnalisé (fait avec le "mannequin gal" de "Sobchak" dans le "community content")
le joueur est équipé de 3 armes graçe au menu d'armes (fait avec le "weapon inventory with items"de "Blackdheart" dans le "community content")
donc pour l'instant, le joueur est capable d'entrer dans le tank, tirer avec le canon seul et quand il sort il garde son costume et récupère le menu d'armes,
il faut juste actionner la mollette de la souris. génial,on avançe on avançe...

j'ai trois autres problèmes:

le 1er: comment faire pour pouvoir creer un menus d'armes personnalisé pour chaque équipe.(1et2)
il n'y a pas d'options d'assignation pour le choix de l'équipe dans le "weapon inventory with items"de "Blackdheart"
(les 2 équipes on les memes armes).

le 2ème: comment faire pour que: quand le joueur est dans le tank il puisse subir des dégats quand on lui tire dessus.
(joueur qui peut etre tuer dans le tank sans détruire le tank)

le3ème: comment faire pour limiter l'angle de tir du canon du tank à 90° au lieu de 360° et également en hauteur.

merci beaucoup,


I come back to you to report a problem that I had not seen.
in the message above, I said that it worked, but in fact not.. arghh!!!
the character equipped with a costume and the weapons menu ("weapon inventory with items" from "Blackdheart")
get into the tank and shoot. so far so good. but if I turn the mouse wheel, or,
one of the letters assigned to the weapon menu (Q,E)
boom!!, again the tank cannon and the player's weapon fire at the same time.
I end up with the same problem, however,
advanced weapons work through blackheart's weapon menu.
the custom costume made with the "mannequin gal" from "Sobchak" is not destroyed
when the player gets out of the tank, it's already good...
finally, it might be necessary to adapt the "standardcombo" script mentioned above to the weapons menu.
What do you think?


je reviens vers vous pour vous signaler un problème que je n'avait pas vu.
dans le message ci-dessus, je disait que cela fonctionnait, mais en fait non.. arghh!!!
le personnage équipé d'un costume et du menu d'armes ("weapon inventory with items"de "Blackdheart")
entre dans le tank et tire. jusque là, tout vas bien. mais si je tourne la molette de la souris,ou,
une des lettres assignées au menu d'armes (Q,E)
boum!!, à nouveau, le canon du tank et l'arme du joueur tire en meme temps.
je me retrouve finalement avec le meme problème, toutefois,
les armes avancées fonctionnent en passant par le menu d'armes de "blackdheart".
le costume personnalisé fait avec le "mannequin gal" de "Sobchak" n'est pas détruit
lorsque le joueur sort du tank.c'est déjà bien...
finalement,il faudrait peut etre adapter le script de "standardcombo" citer ci-dessus au menu d'armes.
qu'en pensez vous?