ScriptSpot

Forum topic · General Scripting

Active camera renamer

By Dragan_ilic · 2020-04-29

Description

Hey everyone, i have a little problem, i hope someone has the answer.
I tried to make a active camera renamer, it should rename the camera and the target of the camera, everything works but there is a problem with the number. it renames the camera and the targets like this:


Camera_New_camera_name_1
Camera_New_camera_name_1.Target
Camera_New_camera_name_3
Camera_New_camera_name_3.Target
Camera_New_camera_name_5
Camera_New_camera_name_5.Target

but it should rename it like this:



Camera_New_camera_name_1
Camera_New_camera_name_1.Target
Camera_New_camera_name_2
Camera_New_camera_name_2.Target
Camera_New_camera_name_3
Camera_New_camera_name_3.Target


Here is the code:


 try(destroydialog Acamera_renamer) catch()
   rollout Acamera_renamer "Active Camera renamer" width:220
   (
   	local baseName = "Camera_"
   	
   	edittext basename_ed "Active Camera Name:" width:210 pos:[5,8] labelOnTop:on
   	button rename_bt "Rename" width:210 pos:[5,50]
   	
   	
   	on rename_bt pressed do undo "Rename" on 
   	(
   		
		
		for i=1 to cameras.count where classof cameras[i]!=targetObject do 
		(
			num= i as string
			cameras[i].name  = baseName + basename_ed.text + "_" +num
			cameras[i].target.name = baseName+ basename_ed.text + "_" + num +".Target" 
		)
   	)
   )
   createdialog Acamera_renamer

Thx Dragan

Attachments
Comments (2)

Swordslayer · 2020-05-07

Keep the counter separate:

local num = 1

for cam in cameras where not isKindOf cam targetObject do 
(
	local numStr = num as string
	num += 1

	cam.name = baseName + basename_ed.text + "_" + 
	cam.target.name = baseName + basename_ed.text + "_" + num +".Target" 
)

Dragan_ilic · 2020-05-10

Thank you for the quick answer,
if i change it like that i always get an error, i think i dont understand exactly how it should be implemented :(