feat : mobile input controller
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
import sys
|
||||
import re
|
||||
|
||||
file_path = 'c:/Users/beng/Godot/Projects/tekton-enet/scenes/main.tscn'
|
||||
with open(file_path, 'r', encoding='utf-8') as f:
|
||||
lines = f.readlines()
|
||||
|
||||
interaction_idx = -1
|
||||
for i, line in enumerate(lines):
|
||||
if line.startswith('[node name="InteractionBtn" type="VBoxContainer"'):
|
||||
interaction_idx = i
|
||||
break
|
||||
|
||||
if interaction_idx != -1:
|
||||
for i in range(interaction_idx, interaction_idx + 10):
|
||||
if lines[i].startswith('offset_bottom = '):
|
||||
lines[i] = 'offset_bottom = 282.9999\n'
|
||||
break
|
||||
|
||||
power_btn_start = -1
|
||||
power_btn_end = -1
|
||||
for i, line in enumerate(lines):
|
||||
if line.startswith('[node name="PowerUpBtn" type="Button" parent="TouchLayer/TouchControls/PowerUpInventoryUI"'):
|
||||
power_btn_start = i
|
||||
# Need to check original parent too in case the earlier modification didn't change this string perfectly, wait!
|
||||
# Ah, PowerUpBtn parent was originally "PowerUpInventoryUI". I did change PowerUpInventoryUI's parent... but did I change PowerUpBtn's parent text in `.tscn`? NO! PowerUpBtn is still `parent="PowerUpInventoryUI"`.
|
||||
if line.startswith('[node name="PowerUpBtn" type="Button" parent="PowerUpInventoryUI"'):
|
||||
power_btn_start = i
|
||||
|
||||
if power_btn_start != -1:
|
||||
for i in range(power_btn_start+1, len(lines)):
|
||||
if lines[i].startswith('[node '):
|
||||
power_btn_end = i
|
||||
break
|
||||
if power_btn_end == -1:
|
||||
power_btn_end = len(lines)
|
||||
|
||||
insert_target_start = -1
|
||||
if interaction_idx != -1:
|
||||
for i in range(interaction_idx + 1, len(lines)):
|
||||
if lines[i].startswith('[node '):
|
||||
if 'parent="TouchLayer/TouchControls/InteractionBtn"' in lines[i]:
|
||||
pass
|
||||
else:
|
||||
insert_target_start = i
|
||||
break
|
||||
|
||||
if power_btn_start != -1 and insert_target_start != -1:
|
||||
block = lines[power_btn_start:power_btn_end]
|
||||
block[0] = block[0].replace('parent="PowerUpInventoryUI"', 'parent="TouchLayer/TouchControls/InteractionBtn"')
|
||||
|
||||
del lines[power_btn_start:power_btn_end]
|
||||
|
||||
if insert_target_start > power_btn_end:
|
||||
insert_target_start -= (power_btn_end - power_btn_start)
|
||||
|
||||
lines = lines[:insert_target_start] + block + lines[insert_target_start:]
|
||||
|
||||
with open(file_path, 'w', encoding='utf-8') as f:
|
||||
f.writelines(lines)
|
||||
print('Successfully moved PowerUpBtn and resized InteractionBtn')
|
||||
else:
|
||||
print(f'Failed to find targets: btn_start={power_btn_start}, insert_target={insert_target_start}, interaction_idx={interaction_idx}')
|
||||
Reference in New Issue
Block a user