public void init() {
		if(this.cancel) return;
		
		if(!this.objectsToAdd.isEmpty()){
			for(BaseObject obj:this.objectsToAdd){
				obj.init();
				obj.load();
				this.objects.add(obj);
			}
			this.objectsToAdd.clear();
		}
		
		if(this.subsystems.size() > 0){
			for(Subsystem system:this.subsystems){
				system.startup();
			}
		}
		
		this.onInit();
	}