static RailwayStation CreateModel(Railway.Point.EType type) { string path = "TaskJoint"; switch (type) { case Railway.Point.EType.Joint: path = "TaskJoint"; break; case Railway.Point.EType.Station: path = "TaskStation"; break; case Railway.Point.EType.End: default: path = "TaskEnd"; break; } GameObject go = Object.Instantiate(Resources.Load <GameObject>(path)); if (null == go) { return(null); } go.transform.parent = Railway.Manager.railRoot; go.transform.localScale = Vector3.one; return(go.GetComponent <RailwayStation>()); }
public void RequestAddPoint(Vector3 pos, Railway.Point.EType type, int prePointId, int itemObjId) { RemoveItemFromPlayerPkg(itemObjId); Railway.Point point = DoAddPoint(pos, type, prePointId); if (point != null) { point.itemInstanceId = itemObjId; } }
public Railway.Point DoAddPoint(Vector3 pos, Railway.Point.EType type, int prePointId, int pointId = -1) { Railway.Point point = Railway.Manager.Instance.GetPoint(prePointId); // Reverse Link if (null != point && Railway.Manager.InvalId == point.prePointId && Railway.Manager.InvalId != point.nextPointId) { Railway.Point.ReverseNext(point); } return(Railway.Manager.Instance.AddPoint(pos, prePointId, type, pointId)); }