Beispiel #1
0
 public Syncer(TuringScene myscene, float interval, List <iSyncable> syncobjects)
 {
     scene       = myscene;
     Interval    = interval;
     SyncObjects = syncobjects;
     Start       = Time.time;
 }
Beispiel #2
0
    public override void executeRelease()
    {
        var syncable = host.getGameObject().GetComponent <Syncable> ();

        if (syncable == null)
        {
            return;
        }

        TuringScene scene = syncable.getSceneObject();

        if (scene == null)
        {
            return;
        }

        Ground groundtilled = (Ground)scene.syncObjects.Where(x => x.getGameObject().GetComponent <Ground> () != null &&
                                                              x.getGameObject().transform.position.snap() == host.getGameObject().transform.position.snap() &&
                                                              ((Ground)x.getGameObject().GetComponent <Ground>()).getState() == GroundState.Tilled
                                                              ).FirstOrDefault();

        if (groundtilled == null)
        {
            return;
        }
        else
        {
            groundtilled.setState(GroundState.Planted);
        }
    }
Beispiel #3
0
 void Awake()
 {
     CurrentController = this;
     //arena = new Arena(new Vector3(6,6,6));
     Runners     = new List <Runner>();
     Pagodas     = new List <PagodaController>();
     syncObjects = new List <iSyncable>();
     Solids      = new List <SolidController> ();
     syncer      = new Syncer(this, syncerInterval, syncObjects);
 }
Beispiel #4
0
	public override void executeRelease(){
		var syncable = host.getGameObject().GetComponent<Syncable> ();
		if (syncable == null)
			return;
		
		TuringScene scene = syncable.getSceneObject ();
		if (scene == null)
			return;
		
		MarkingController marker = (MarkingController)scene.syncObjects.Where (x => x.getGameObject().GetComponent<MarkingController> () != null
		                                                    && x.getGameObject().transform.position.snap () == host.getGameObject().transform.position.snap ()
		                                                    ).FirstOrDefault ();
		if (marker == null)
			return;
		else {
			marker.Delete ();
			Transform t = Instantiate(groundTilledPrefab, host.getGameObject().transform.position.snap (), Quaternion.identity) as Transform;
			//set owner?
			t.GetComponent<iSyncable>().setSceneObject(scene); //how to do this genericly
			t.GetComponent<Ground>().setState(GroundState.Tilled);
		}
		
	}
Beispiel #5
0
 // Use this for initialization
 void Start()
 {
     scene = TuringScene.CurrentController;
 }
Beispiel #6
0
 protected virtual void Start()
 {
     scene       = TuringScene.CurrentController;
     TimeCreated = DateTime.Now;
     registerAsSyncObject();
 }
Beispiel #7
0
 public virtual void setSceneObject(TuringScene t)
 {
     //scene = t;
 }