Camera system YAY!!!
This commit is contained in:
49
Scripts/Gameplay/Camera/cCamera.gd
Normal file
49
Scripts/Gameplay/Camera/cCamera.gd
Normal file
@@ -0,0 +1,49 @@
|
||||
class_name cCamera
|
||||
|
||||
var cam: Dictionary
|
||||
var camID: String
|
||||
|
||||
var camGraph = Global.loadJSON("res://Data/cameras.json")
|
||||
|
||||
var name: String
|
||||
var disabled: bool
|
||||
var rendersChart: Dictionary
|
||||
var renders: Dictionary
|
||||
var locationID: String
|
||||
var location: cLocation
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _init(id: String) -> void:
|
||||
camID = id
|
||||
cam = camGraph[camID]
|
||||
|
||||
print("Setting up camera " + camID)
|
||||
name = cam.get("name")
|
||||
disabled = cam.get("disabled")
|
||||
rendersChart = cam.get("renders")
|
||||
locationID = str( int( cam.get("location") ) )
|
||||
location = cLocation.new(locationID)
|
||||
|
||||
print(name)
|
||||
print(disabled)
|
||||
print(rendersChart)
|
||||
print(location)
|
||||
|
||||
_loadRenders()
|
||||
|
||||
func _loadRenders():
|
||||
renders = {}
|
||||
for key in rendersChart:
|
||||
var renderPath = rendersChart[key]
|
||||
|
||||
if renderPath == null or not FileAccess.file_exists(renderPath):
|
||||
push_error("Missing render: " + str(renderPath))
|
||||
continue
|
||||
|
||||
renders[key] = load(renderPath)
|
||||
|
||||
func getFeed() -> Texture2D:
|
||||
var hash = location.makeHash()
|
||||
if not renders.has(hash): return null
|
||||
|
||||
return renders[hash]
|
||||
Reference in New Issue
Block a user