static public Factory_Arrow getInstance() { if (_instance == null) { _instance = new Factory_Arrow(); } return(_instance as Factory_Arrow); }
public static Action getAction(Vector3 pos, float speed) { ShootArrow action = ScriptableObject.CreateInstance <ShootArrow>(); action.factory = Factory_Arrow.getInstance(); action.arrow = action.factory.getProduct(); action.gameobject = action.arrow.gameobject; action.gameobject.transform.position = pos; action.gameobject.GetComponent <Rigidbody>().velocity = (new Vector3(0, 0, 200) - pos).normalized * speed; return(action); }