naja ,was ich suche ist ein weg viele objekte per script anzusteuern , und zwar einzeln ohne jedem per hand eine Ref id geben zu müssen.

das sollte eigentlich mit "GetLinkedRef" gehen, aber sobald ich das auf mehr als ursprungsref und einen danach anwende geht das script nicht mehr

die idee ist das in dem bild oben die einzelnen munitionsschachteln angesteuert werden können über die variable Ref "AMMOx" und nur
die Referenz der Munitionskiste im Script festgelegt ist.

hier das ganze script, (aber das sollte eher mehr verständnissprobleme bringen, der kern des Problems sind die paar zeilen oben im Bild)
Zitat Zitat
scn Abr1ScriptVerteilerUndEinlagerscript

short Button
short aktuellemenge
short aktuellemenge1
ref BehTresor
ref BehZeug
ref BehWerkzeug
ref BehKuelschrank
ref BehErstehilfe
ref BehMunition
ref Ammo1
ref Ammo2
ref Ammo3
ref Ammo4
ref Ammo5

begin OnActivate
if ( IsActionRef Player == 1 )
ShowMessage ABR1MsgWohnungsTresor
endif

end

begin gamemode
set BehTresor to Abr11Testsafetest
set BehZeug to ( BehTresor.GetLinkedRef )
; set BehWerkzeug to ( BehZeug.GetLinkedRef )
; set BehKuelschrank to ( BehWerkzeug.GetLinkedRef )
; set BehErstehilfe to ( BehKuelschrank.GetLinkedRef )
set BehMunition to Abr11Testmunibeh
set Ammo1 to ( BehMunition .GetLinkedRef )
; set Ammo2 to ( Ammo1.GetLinkedRef )
; set Ammo3 to ( Ammo2.GetLinkedRef )
; set Ammo4 to ( Ammo3.GetLinkedRef )
; set Ammo5 to ( Ammo4.GetLinkedRef )

set Button to GetButtonPressed

if ( Button == 0 )
elseif ( Button == 1 )
player.RemoveAllItems BehTresor

set aktuellemenge to ( BehTresor.GetItemCount ABR1Munition10mmMagnum ) BehMunition.additem ABR1Munition10mmMagnum aktuellemenge
BehTresor.removeitem ABR1Munition10mmMagnum aktuellemenge

set aktuellemenge1 to ( BehMunition.GetItemCount ABR1Munition10mmMagnum )
if (aktuellemenge1 >= 50 )
ammo1.SetScale 1
elseif (aktuellemenge1 < 50 )
ammo1.SetScale 0
endif

; if (aktuellemenge1 >= 100 )
; ammo2.SetScale 1
; elseif (aktuellemenge1 < 100 )
; ammo2.SetScale 0
; endif

; if (aktuellemenge1 >= 150 )
; ammo3.SetScale 1
; elseif (aktuellemenge1 < 150 )
; ammo3.SetScale 0
; endif

; if (aktuellemenge1 >= 200 )
; ammo4.SetScale 1
; elseif (aktuellemenge1 < 200 )
; ammo4.SetScale 0
; endif

; if (aktuellemenge1 >= 250 )
; ammo5.SetScale 1
; elseif (aktuellemenge1 < 250 )
; ammo5.SetScale 0
; endif
endif
end