public override bool Init() { bool initSuccess = false; //Initialised required config values - Minimum Spike Pips values determines the pip distance required to indicate a spike in either direction if (RuleConfig.Params.TryGetValue(RuleConfiguration.MINSPIKEPIPS, out object minSpikePips)) { if (Double.TryParse(minSpikePips.ToString(), out MinSpikePips)) { initSuccess = true; } } //Initialised inactive IsActive = false; //Reset all variables OpenPrice = 0; SpikeUpPeakPips = 0; SpikeUpPeakPrice = 0; SpikeDownPeakPips = 0; SpikeDownPeakPrice = 0; SpikeDirection = Spike.NONE; return(initSuccess); }
//Capture Spike public void CaptureSpike(Tick tick) { double tickMidPrice = GetMidPrice(tick); //If the Mid price is above the OpenPrice then update the Spike UP if (tickMidPrice > OpenPrice) { if (tickMidPrice > SpikeUpPeakPrice || SpikeUpPeakPrice == 0) { SpikeUpPeakPrice = tickMidPrice; SpikeUpPeakPips = tickMidPrice - OpenPrice; if (SpikeUpPeakPips > MinSpikePips) { SpikeDirection = Spike.UP; } } } //If the Mid price is below the OpenPrice then update the Spike DOWN if (tickMidPrice < OpenPrice) { if (tickMidPrice < SpikeDownPeakPrice || SpikeDownPeakPrice == 0) { SpikeDownPeakPrice = tickMidPrice; SpikeDownPeakPips = OpenPrice - tickMidPrice; if (SpikeUpPeakPips > MinSpikePips) { SpikeDirection = Spike.DOWN; } } } }
public void Move() { if (Start == true) { Start = false; } if (Spike.Id == 1 || Spike.Id == 3) { if (Spike.X > ONE_HUNDRED_ELEVEN * Global.Var.SCALE) { Spike.SetState(Spike.horizontalMovingBackward); Spike.CurrentState.Start = true; } else { Spike.X = Spike.X + F_ONE_DOT_FIVE * Global.Var.SCALE; } } else if (Spike.Id == 2 || Spike.Id == 4) { if (Spike.X < ONE_HUNDRED_TWENTY_NINE * Global.Var.SCALE) { Spike.SetState(Spike.horizontalMovingBackward); Spike.CurrentState.Start = true; } else { Spike.X = Spike.X - F_ONE_DOT_FIVE * Global.Var.SCALE; } } }
public void Move() { if (Start == true) { Start = false; } if (Spike.Id == 1 || Spike.Id == 2) { if (Spike.Y > ONE_HUNDRED_THIRTY_FIVE * Global.Var.SCALE) { Spike.SetState(Spike.verticalMovingBackward); Spike.CurrentState.Start = true; } else { Spike.Y = Spike.Y + F_ONE_DOT_FIVE * Global.Var.SCALE; } } else if (Spike.Id == 3 || Spike.Id == 4) { if (Spike.Y < ONE_HUNDRED_FIFTY_TWO * Global.Var.SCALE) { Spike.SetState(Spike.verticalMovingBackward); Spike.CurrentState.Start = true; } else { Spike.Y = Spike.Y - F_ONE_DOT_FIVE * Global.Var.SCALE; } } }
void ColWithSpike(Spike spike) { if ((isPowered && state == State.Jumping) || isStomping) { spike.ColWithStomp(); GameManager.Instance.StompSpike(transform.position); } else if (!isImmune) { life -= 1; lifeSet.GetDamage(); isImmune = true; immuneTick = 0f; immuneETime = 0f; cameraScript.ShakeSpike(); if (life == 0) { Die(); } else { hitParticle.transform.position = transform.position + new Vector3(0, 0, 500); hitParticle.transform.localScale = transform.localScale; hitParticle.gameObject.SetActive(true); hurtSound.Play(); } } }
private void SpawnTower() { Spike spike = SpikePooler.Instance.GetPooledObject(); Vector3 spawnPoint = cube.GetRandomPointInside(); spike.Initialize(spawnPoint); }
public void Move() { if (Spike.Id == 1 || Spike.Id == 3) { if (Spike.X < THIRTY_FOUR * Global.Var.SCALE) { Spike.SetState(Spike.idleState); Spike.CurrentState.Start = true; } else if (count > FORTY) { Spike.X = Spike.X - F_DOT_EIGHT * Global.Var.SCALE; } } else if (Spike.Id == 2 || Spike.Id == 4) { if (Spike.X > TWO_HUNDRED_SEVEN * Global.Var.SCALE) { Spike.SetState(Spike.idleState); Spike.CurrentState.Start = true; } else if (count > FORTY) { Spike.X = Spike.X + F_DOT_EIGHT * Global.Var.SCALE; } } }
public void AddObserver(Spike observer) { GameObject g = Instantiate(observer.gameObject); Spikes.Add(g.GetComponent <Spike>()); Wave.SpikesSpawnAmount++; }
public void Awake() { this.spriteRenderer = GetComponent <SpriteRenderer>(); // Set random sprite blockNum = Random.Range(1, 4); this.spriteRenderer.sprite = Instantiate(Resources.Load <Sprite>("Sprites/Environment/block" + blockNum)) as Sprite; // Spikes if (!starterBlock) { if (Random.Range(0, 10) == 0) { GameObject spikeGO = (GameObject)Instantiate(spikePrefab, transform.position + Vector3.up + Vector3.back, Quaternion.Euler(new Vector3(0f, 0f, -90f))); spikeGO.transform.parent = transform; spikeSprite = spikeGO.GetComponent <Sprite>(); spike = spikeGO.GetComponent <Spike>(); spikes = true; } else if (Random.Range(0, 8) == 0) { battery = (GameObject)Instantiate(batteryPrefab, transform.position + Vector3.up * 1.5f + Vector3.back, Quaternion.identity); ((Rigidbody2D)battery.GetComponent <Rigidbody2D>()).velocity = Vector2.up * GameManager.instance.scrollSpeed; battery.transform.parent = transform; } } // Velocity GetComponent <Rigidbody2D>().velocity = Vector2.up * GameManager.instance.scrollSpeed; }
// Start is called before the first frame update void Start() { gameStatus = FindObjectOfType <GameStatus>(); spike = FindObjectOfType <Spike>(); ball = FindObjectOfType <Ball>(); playAgainButton.gameObject.SetActive(false); }
public void Move() { if (Spike.Id == 1 || Spike.Id == 2) { if (Spike.Y < NINETY_SEVEN * Global.Var.SCALE) { Spike.SetState(Spike.idleState); Spike.CurrentState.Start = true; } else { Spike.Y = Spike.Y - F_DOT_SEVEN * Global.Var.SCALE; } } else if (Spike.Id == 3 || Spike.Id == 4) { if (Spike.Y > ONE_HUNDRED_EIGHTY_NINE * Global.Var.SCALE) { Spike.SetState(Spike.idleState); Spike.CurrentState.Start = true; } else { Spike.Y = Spike.Y + F_DOT_SEVEN * Global.Var.SCALE; } } }
public override void LoadContent() { base.LoadContent(); timer = 0; player = new Player(new Rectangle(600, 500, 50, 50)); player2 = new Player(new Rectangle(800, 800, 50, 50)); Platform platform = new Platform("Platform", new Rectangle(700, 800, 100, 30)); Platform platform2 = new Platform("Platform", new Rectangle(600, 900, 100, 30)); Platform platform3 = new Platform("Platform", new Rectangle(550, 700, 100, 30)); Platform platform4 = new Platform("Platform", new Rectangle(0, 950, 10000, 30)); Platform platform5 = new Platform("Platform", new Rectangle(1000, 400, 30, 600)); Spike spike = new Spike("Spike", new Rectangle(900, 900, 30, 100)); BouncePad bouncePad = new BouncePad("BouncePad", new Rectangle(200, 950, 60, 10)); Pillow pillow = new Pillow("Pillow", new Rectangle(300, 920, 30, 20)); sprites.Add(platform); sprites.Add(platform2); sprites.Add(platform3); sprites.Add(platform4); sprites.Add(platform5); sprites.Add(player2); sprites.Add(player); sprites.Add(spike); sprites.Add(bouncePad); sprites.Add(pillow); foreach (var s in sprites) { s.LoadContent(Content); } controller = new GameController(1); controller2 = new GameController(2); }
void Awake() { spike = GetComponentInChildren <Spike>(); spikeRb = spike.GetComponent <Rigidbody>(); spikeTarget = spike.transform.parent; spike.transform.localPosition = spikeRb.centerOfMass; }
protected override TestResult ExecuteTest(Spike.Scripting.Hosting.CSharp.Context ctx, string test) { var times = new List<long>(); try { //Warmup run so we don't get hit by Spike.Scripting assembly JIT overhead ctx.ExecuteFile(test); for (int i = 0; i < Runs; i++) { // Collect all garbage between runs GC.Collect(2, GCCollectionMode.Forced); // Run and time var sw = Stopwatch.StartNew(); ctx.ExecuteFile(test); sw.Stop(); times.Add(sw.ElapsedMilliseconds); } } catch (Exception ex) { return new TestResult { Error = ex.GetBaseException().Message, Tag = Tuple.Create(test, Enumerable.Repeat(-1L, Runs).ToArray()) }; } return new TestResult { Score = GetScore(times), Tag = Tuple.Create(test, times.ToArray()) }; }
// ロード開始 public void Load(int stage) { TMXLoader tmx = new TMXLoader(); // ファイルパスを作成 string path = string.Format("Levels/{0:D3}", stage); tmx.Load(path); // 0番目のレイヤーに情報を取得する Layer2D layer = tmx.GetLayer(0); // タイルの配置 for (int j = 0; j < layer.Height; j++) { for (int i = 0; i < layer.Width; i++) { // 座標を指定してレイヤーの値を取得 int v = layer.Get(i, j); float x = GetChipX(i); float y = GetChipY(j); switch (v) { case CHIP_PLAYER: { // プレイヤを移動させる GameObject obj = GameObject.Find("Player") as GameObject; Player player = obj.GetComponent <Player>(); player.SetPosition(x, y); } break; case CHIP_WALL: // 壁を作成 Wall.Add(x, y); break; case CHIP_SPIKE: // トゲを生成 Spike.Add(x, y); break; case CHIP_FLOOR_MOVE: // 移動床を作成 FloorMove.Add(x, y); break; case CHIP_GOAL: { // ゴールを移動させる GameObject obj = GameObject.Find("Goal") as GameObject; Goal goal = obj.GetComponent <Goal>(); goal.SetPosition(x, y); } break; } } } }
/* * Adds Spike */ private void AddSpike() { GameObject c = (GameObject)Instantiate(spikePrefab); _child = c.GetComponent <Spike>(); _child.init(_currentLane, _swirlie, this); _head.NumOfSpikes++; }
private void Awake() { spike = transform.parent.gameObject.GetComponent <Spike>(); player = GameObject.FindGameObjectWithTag("Player").GetComponent <Player>(); StartCoroutine(JustSpawned()); }
public PlayGround(GameController gameController) { Spike = new Spike(); Collaborator = new Collaborator(); CollaboratorActive = false; PlayField = new Dictionary <string, Square>(); Boxes = new List <Box>(); this.gameController = gameController; }
public Spike getHead() { Spike current = this; while (current.Parent != null) { current = current.Parent; } return(current); }
/* * Removes Spike */ private void RemoveSpike(Spike s) { if (s == _child) { _child = null; _invulnerable = false; } _swirlie.TailSpike = this; _head.NumOfSpikes--; _startTime = Time.time; }
bool IDeletable.Delete(Spike spike) { if (!invulnerable) { int spikeX = (int)spike.transform.position.x; int parentX = (int)this.transform.position.x; int x = spikeX - parentX; EffectManager.AddGameEffect(new SplitTextEffect(this.GetComponent <TextCollider2D>(), x)); } return(!invulnerable); }
void OnCollisionEnter2D(Collision2D coll) { float hitTime = Time.time; if ((hitTime - hitImmunityTime) > lastHitTime && coll.gameObject.tag == "Spike") { Spike spike = coll.gameObject.GetComponentInParent <Spike> (); TakeHit(spike.damage); lastHitTime = hitTime; } }
/* * Spawns Swirlie on same lane as spike */ public override void spawn(Lane spawnLane) { _heightOffset = renderer.bounds.size.y / 2.0f; _shootTime = Time.time; _currentLane = spawnLane; _alive = true; gameObject.transform.position = _currentLane.Back + (renderer.bounds.size.y / 2) * _currentLane.Normal; transform.rotation = Quaternion.LookRotation(_currentLane.Normal); GameObject spike = (GameObject)Instantiate(spikePrefab); _headSpike = spike.GetComponent<Spike>(); _headSpike.init(spawnLane, this); }
void CreateSpike() { Spike spike = PoolManager.Instance.GetObject <Spike>(Defs.Spike); int dir = Random.Range(0, 2) * 2 - 1; spike.Initialize(dir); if (Random.Range(0f, 1f) > 0.66f) { Spike spike2 = PoolManager.Instance.GetObject <Spike>(Defs.Spike); spike2.Initialize(dir, true); } }
void CreateSpike() { Vector3 position; position.x = -width + Random.Range(1f, (width * 2) - 2f); position.y = -height + Random.Range(1f, (height * 2) - 2f); position.z = -1f; Spike spike = null; spike = Instantiate(spikePrefab, position, Quaternion.identity).GetComponent <Spike>(); spikes.Add(spike); }
void SpawnSpike() { y = Random.Range(LOWER_RANGE, UPPER_RANGE); spawnedSpike = Instantiate(spikePrefab, new Vector2(x, y), Quaternion.identity); spike = spawnedSpike.GetComponent <Spike>(); if (initialSpeed < MAX_SPEED) { initialSpeed += increasedSpeed; spike.SetSpeed(initialSpeed); } Destroy(spawnedSpike, 10f); }
/* * Spawns Swirlie on same lane as spike */ public override void spawn(Lane spawnLane) { _heightOffset = renderer.bounds.size.y / 2.0f; _shootTime = Time.time; _currentLane = spawnLane; _alive = true; gameObject.transform.position = _currentLane.Back + (renderer.bounds.size.y / 2) * _currentLane.Normal; transform.rotation = Quaternion.LookRotation(_currentLane.Normal); GameObject spike = (GameObject)Instantiate(spikePrefab); _headSpike = spike.GetComponent <Spike>(); _headSpike.init(spawnLane, this); }
public void Load(int stage) { TMXLoader tmx = new TMXLoader(); string path = string.Format("Levels/{0:D3}", stage); tmx.Load(path); Layer2D layer = tmx.GetLayer(0); //Debug.Log ("幅:" + layer.Width); //Debug.Log ("高:" + layer.Height); for (int j = 0; j < layer.Height; j++) { for (int i = 0; i < layer.Width; i++) { int v = layer.Get(i, j); float x = GetChipX(i); float y = GetChipY(j); switch (v) { case CHIP_PLAYER: { GameObject obj = GameObject.Find("Player") as GameObject; Player player = obj.GetComponent <Player> (); player.SetPosition(x, y); } break; case CHIP_WALL: Wall.Add(x, y); break; case CHIP_SPIKE: Spike.Add(x, y); break; case CHIP_FLOOR_MOVE: FloorMove.Add(x, y); break; case CHIP_GOAL: { GameObject obj = GameObject.Find("Goal") as GameObject; Goal goal = obj.GetComponent <Goal>(); goal.SetPosition(x, y); } break; } } } }
void CreateSpike() { int[] toSide = new int[2] { 1, -1 }; //check Z Vector3 position; position.x = Random.Range(0.3f, width - 1f) * toSide[Random.Range(0, toSide.Length)]; position.y = Random.Range(0.3f, height - 1f) * toSide[Random.Range(0, toSide.Length)]; position.z = -1.2f; Spike spike = null; spike = Instantiate(spikePrefab, position, Quaternion.identity).GetComponent <Spike>(); spikes.Add(spike); }
void CreateSpike() { Spike spike = null; // spike = Instantiate(spikePrefab, position, Quaternion.identity).GetComponent<Spike>(); // spikes.Add(spike); for (int i = 0; i < numberOfSpike; i++) { Vector3 position; position.x = -width + Random.Range(1f, (width * 2) - 2f); position.y = -height + Random.Range(1f, (height * 2) - 2f); position.z = -1; spike = Instantiate(spikePrefab, position, Quaternion.identity).GetComponent <Spike>(); spikes.Add(spike); } }
public void SpawnSpike() { if (spawningSpike != null) { waitingSpike = spawningSpike; waitingSpike.Invoke("Fall", 1.5F); } spawningSpike = Spawn("Spike", transform.position, Quaternion.identity).GetComponent <Spike>(); spawningSpike.transform.parent = transform; spawningSpike.spikeManager = this; if (autoSpawn) { spawnDelay = randomGenerator.Range(spawnMinDelay, spawnMaxDelay); SpawnSpikeIn(spawnDelay); } }
public void WaveSpawner() { // Spawn a drop CurrentDropTime += Time.deltaTime; if (CurrentDropTime > DropTime && Wave.DropsSpawnAmount != Wave.DropsAmount) { EnemyManager.AddObserver(Drop.GetComponent <JuiceDrop>()); CurrentDropTime = 0f; DropTime = RandomHelper.NextRandom(3, 5); } // Spawn a spike CurrentSpikeTime += Time.deltaTime; if (CurrentSpikeTime > SpikeTime && Wave.SpikesSpawnAmount != Wave.SpikesAmount) { EnemyManager.AddObserver(Spike.GetComponent <Spike>()); CurrentSpikeTime = 0; SpikeTime = RandomHelper.NextRandom(3, 5); } // Spawn a fire CurrentFireTime += Time.deltaTime; if (CurrentFireTime > FireTime && Wave.FiresSpawnAmount != Wave.FireAmount) { EnemyManager.AddObserver(Fire.GetComponent <Fire>()); CurrentFireTime = 0f; FireTime = RandomHelper.NextRandom(3, 5); } // Spawn the boss if (Wave.DropsSpawnAmount == Wave.DropsAmount && Wave.SpikesSpawnAmount == Wave.SpikesAmount && Wave.FiresSpawnAmount == Wave.FireAmount && Wave.WaveLevel == Wave.FinalWaveLevel) { LevelState = LevelState.Boss; // Or Spawn another wave } else if (Wave.DropsSpawnAmount == Wave.DropsAmount && Wave.SpikesSpawnAmount == Wave.SpikesAmount && Wave.FiresSpawnAmount == Wave.FireAmount) { GameObject.FindWithTag("GameController").GetComponent <GameController>().Restart(); } // Notify all enemies //EnemyManager.Notify(Player); }
/* * Initializes position to spawn new spike */ public void init(Lane spawnLane, Swirlie swirlie, Spike parent = null) { _swirlie = swirlie; _parent = parent; _head = getHead(); _invulnerable = swirlie != null; if (_parent == null) { gameObject.transform.position = (spawnLane.Front - spawnLane.Back) * DEFAULT_DIST_FROM_BACK + spawnLane.Back; } else { gameObject.transform.position = (spawnLane.Front - _parent.gameObject.transform.position).normalized * spikePrefab.renderer.bounds.size.x + _parent.gameObject.transform.position; } swirlie.TailSpike = this; _startTime = Time.time; _currentLane = spawnLane; _alive = true; transform.rotation = Quaternion.LookRotation(_currentLane.Normal); }
public void Awake() { this.spriteRenderer = GetComponent<SpriteRenderer>(); // Set random sprite blockNum = Random.Range(1, 4); this.spriteRenderer.sprite = Instantiate(Resources.Load<Sprite>("Sprites/Environment/block" + blockNum)) as Sprite; // Spikes if(!starterBlock) { if(Random.Range(0, 10) == 0) { GameObject spikeGO = (GameObject)Instantiate(spikePrefab, transform.position + Vector3.up + Vector3.back, Quaternion.Euler(new Vector3(0f, 0f, -90f))); spikeGO.transform.parent = transform; spikeSprite = spikeGO.GetComponent<Sprite>(); spike = spikeGO.GetComponent<Spike>(); spikes = true; } else if(Random.Range(0, 8) == 0) { battery = (GameObject)Instantiate(batteryPrefab, transform.position + Vector3.up * 1.5f + Vector3.back, Quaternion.identity); ((Rigidbody2D)battery.GetComponent<Rigidbody2D>()).velocity = Vector2.up * GameManager.instance.scrollSpeed; battery.transform.parent = transform; } } // Velocity GetComponent<Rigidbody2D>().velocity = Vector2.up * GameManager.instance.scrollSpeed; }
protected virtual TestResult ExecuteTest(Spike.Scripting.Hosting.CSharp.Context ctx, string test) { Stopwatch sw; try { sw = Stopwatch.StartNew(); ctx.ExecuteFile(test); sw.Stop(); } catch (Exception ex) { return new TestResult { Error = ex.GetBaseException().Message }; } return new TestResult { Score = sw.ElapsedMilliseconds + "ms" }; }
/* * Adds Spike */ private void AddSpike() { GameObject c = (GameObject)Instantiate(spikePrefab); _child = c.GetComponent<Spike>(); _child.init(_currentLane,_swirlie,this); _head.NumOfSpikes++; }