public override void apply(MealyMachine mac) { float ms = mac.settings.moveSpeed * Action.moveScaler; //Debug.Log("Going left"); mac.selfTransform.position = mac.selfTransform.position - new Vector3(ms, 0, 0); }
public override void apply(MealyMachine mac) { var initialPosition = mac.selfTransform.position; var forceToApply = direction * 100; //Debug.Log("Shooting"); if (mac.settings.bulletPrefab == null) { Debug.LogWarning("No bullet prefab for enemy using debug fallback"); var bullet = GameObject.CreatePrimitive(PrimitiveType.Sphere); bullet.transform.position = initialPosition; bullet.transform.localScale = Vector3.one * 0.1f; var rb = bullet.AddComponent <Rigidbody>(); rb.mass = 0.1f; rb.isKinematic = false; rb.AddForce(forceToApply); Destroy(bullet, 100); } else { var fp = mac.self.transform.Find("Firepoint"); //var angle = Vector3.Angle(Vector3.right, direction); var angle = Brain.PosNegAngle(Vector3.right, direction, Vector3.forward); fp.transform.rotation = Quaternion.Euler(0, 0, angle); //Debug.Log("Instantiate bullet"); var bullet = Instantiate(mac.settings.bulletPrefab, initialPosition, fp.transform.rotation); //Debug.Log(bullet.transform.position.ToString()); //var rb = bullet.GetComponent<Rigidbody2D>(); //rb.AddForce(forceToApply); } }
public static void RunMachine(bool isMachineMealy, Machine machine) { if (isMachineMealy) { var mealyMachine = new MealyMachine(machine); ShowResult(mealyMachine.Run(mealyMachine.Split(GetString()))); } else { var mooreMachine = new MooreMachine(machine); ShowResult(mooreMachine.Run(mooreMachine.Split(GetString()))); } }
void Start() { if (settings.home == null && settings.spawnIsHome) { var go = new GameObject("Home of " + gameObject.name); settings.home = go.transform; settings.home.position = gameObject.transform.position; } var enemyController = GetComponent <EnemyController>(); mealyMachine = new MealyMachine(gameObject, settings, enemyController); }
public override void apply(MealyMachine mac) { var rb = mac.self.GetComponent <Rigidbody2D>(); if (rb == null) { //Debug.Log("Cannot jump don't have rigitbody"); } else { Debug.Log("applying jump force"); rb.AddForce(new Vector2(0, mac.settings.jumpForce), ForceMode2D.Impulse); //rb.AddForce(Vector3.up); } }
/*static Action() { * ALL_ACTIONS = assembly.GetTypes().Where(t => t.BaseType == typeof(baseType)); * }*/ public virtual void apply(MealyMachine mac) { }
public GroundBrain(MealyMachine machine) : base(machine) { }
public Brain(MealyMachine machine) { //Debug.Log("new brain"); this.mac = machine; }
public override void apply(MealyMachine mac) { //Debug.Log("Doing NOP"); }