public override void Init(bool defaultStats = false) { base.Init(defaultStats); if (defaultStats) { maxHealth = 10; health = 10; defense = 4; physAtk = 5; energyAtk = 10; speed = 4; movementRange = 4; // WEAPON(S): weapons = new List <Weapon>(); Weapon rifle = new Rifle(this); weapons.Add(rifle); Equip(rifle); Weapon beamsword = new BeamSword(this); weapons.Add(beamsword); Equip(beamsword); Weapon frag = new Frag(this); weapons.Add(frag); //weapons.Add(new LaserCannon(this)); //weapons.Add(new PhotonEqualizer(this)); //weapons.Add(new EnergyChain(this)); } UpdateStats(); }
public override void ReadImplement() { kills.killingType = (CharaKillTypeEnum)ReadByte(); kills.killsCount = ReadByte(); kills.killerIdx = ReadByte(); kills.weaponId = ReadInt(); kills.x = ReadFloat(); kills.y = ReadFloat(); kills.z = ReadFloat(); kills.flag = ReadByte(); for (int i = 0; i < kills.killsCount; i++) { Frag frag = new Frag { victimWeaponClass = ReadByte() }; frag.SetHitspotInfo(ReadByte()); ReadShort(); frag.flag = ReadByte(); frag.x = ReadFloat(); frag.y = ReadFloat(); frag.z = ReadFloat(); kills.frags.Add(frag); if (frag.VictimSlot == kills.killerIdx) { isSuicide = true; } } }
public async Task Delete(Frag item) { var toDelete = (await firebase .Child("Frags") .OnceAsync <Frag>()).Where(a => a.Key == item.Id).FirstOrDefault(); await firebase.Child("Frags").Child(toDelete.Key).DeleteAsync(); }
// Returns a no-op fragment. Sometimes unavoidable. private Frag nop() { Frag f = newInst(Inst.InstOp.NOP); f.@out = f.i << 1; return(f); }
// flags : parser flags private Frag rune(int[] runes, int flags) { Frag f = newInst(Inst.InstOp.RUNE); Inst i = prog.getInst(f.i); i.runes = runes; flags &= RE2.FOLD_CASE; // only relevant flag is FoldCase if (runes.Length != 1 || Unicode.simpleFold(runes[0]) == runes[0]) { flags &= ~RE2.FOLD_CASE; // and sometimes not even that } i.arg = flags; f.@out = f.i << 1; // Special cases for exec machine. if (((flags & RE2.FOLD_CASE) == 0 && runes.Length == 1) || (runes.Length == 2 && runes[0] == runes[1])) { i.op = Inst.InstOp.RUNE1; } else if (runes.Length == 2 && runes[0] == 0 && runes[1] == Unicode.MAX_RUNE) { i.op = Inst.InstOp.RUNE_ANY; } else if (runes.Length == 4 && runes[0] == 0 && runes[1] == '\n' - 1 && runes[2] == '\n' + 1 && runes[3] == Unicode.MAX_RUNE) { i.op = Inst.InstOp.RUNE_ANY_NOT_NL; } return(f); }
public override void read() { this.kills.killingType = (CharaKillType)this.readC(); this.kills.killsCount = this.readC(); this.kills.killerIdx = this.readC(); this.kills.weapon = this.readD(); this.kills.x = this.readT(); this.kills.y = this.readT(); this.kills.z = this.readT(); this.kills.flag = this.readC(); for (int index = 0; index < (int)this.kills.killsCount; ++index) { Frag frag = new Frag(); frag.victimWeaponClass = this.readC(); frag.SetHitspotInfo(this.readC()); int num = (int)this.readH(); frag.flag = this.readC(); frag.x = this.readT(); frag.y = this.readT(); frag.z = this.readT(); this.kills.frags.Add(frag); if (frag.VictimSlot == (int)this.kills.killerIdx) { this.isSuicide = true; } } }
public override void read() { kills.killingType = (CharaKillType)readC(); kills.killsCount = readC(); kills.killerIdx = readC(); kills.weapon = readD(); kills.x = readT(); kills.y = readT(); kills.z = readT(); kills.flag = readC(); for (int i = 0; i < kills.killsCount; i++) { Frag frag = new Frag(); frag.victimWeaponClass = readC(); frag.SetHitspotInfo(readC()); readH(); frag.flag = readC(); frag.x = readT(); frag.y = readT(); frag.z = readT(); kills.frags.Add(frag); if (frag.VictimSlot == kills.killerIdx) { isSuicide = true; } } }
protected internal override void read() { this._kills = new FragInfos(); int num = (int)base.readH(); this._kills.victimIdx = (int)base.readC(); this._kills.killsCount = (int)base.readC(); this._kills.killerIdx = (int)base.readC(); this._kills.weapon = base.readD(); this._kills.bytes13 = base.readB(13); int num2 = this._kills.killsCount - 1; for (int i = 0; i <= num2; i++) { Frag item = new Frag { unk_c_1 = (int)base.readC(), hitspotNum = (int)base.readC(), unk_c_3 = (int)base.readC(), unk_c_4 = (int)base.readC(), bytes131 = base.readB(13) }; this._kills.frags.Add(item); } }
public void OnResumeCustom() { if (Frag != null) { Frag.OnResumeCustom(); } }
public string Solve(Frag fragment) { if (fragment.isValue) { return(value); } else if (fragment.isOperation) { if (fragment.operation.Equals("+")) { return(( double.Parse(Solve(linkL)) + double.Parse(Solve(linkR))) + ""); //Calculate then turn into a string } else if (fragment.operation.Equals("-")) { return(( double.Parse(Solve(linkL)) - double.Parse(Solve(linkR))) + ""); } else if (fragment.operation.Equals("*")) { return(( double.Parse(Solve(linkL)) * double.Parse(Solve(linkR))) + ""); } else if (fragment.operation.Equals("/")) { return(( double.Parse(Solve(linkL)) / double.Parse(Solve(linkR))) + ""); } else if (fragment.operation.Equals("^")) { return(System.Math.Pow( double.Parse(Solve(linkL)), double.Parse(Solve(linkR))) + ""); } else { Debug.Log("Frag.Solve() issue 2"); return(null); } } else if (fragment.isEnclosure) { return(Solve(fragment)); } else { Debug.Log("Frag.Solve() issue"); return(null); } }
// op is a bitmask of EMPTY_* flags. private Frag empty(int op) { Frag f = newInst(Inst.InstOp.EMPTY_WIDTH); prog.getInst(f.i).arg = op; f.@out = f.i << 1; return(f); }
public static Prog compileRegexp(Regexp re) { Compiler c = new Compiler(); Frag f = c.compile(re); c.prog.patch(f.@out, c.newInst(Inst.InstOp.MATCH).i); c.prog.start = f.i; return(c.prog); }
public override void write() { this.writeH((short)3355); this.writeC((byte)this.kills.killingType); this.writeC(this.kills.killsCount); this.writeC(this.kills.killerIdx); this.writeD(this.kills.weapon); this.writeT(this.kills.x); this.writeT(this.kills.y); this.writeT(this.kills.z); this.writeC(this.kills.flag); for (int index = 0; index < this.kills.frags.Count; ++index) { Frag frag = this.kills.frags[index]; this.writeC(frag.victimWeaponClass); this.writeC(frag.hitspotInfo); this.writeH((short)frag.killFlag); this.writeC(frag.flag); this.writeT(frag.x); this.writeT(frag.y); this.writeT(frag.z); } this.writeH((short)this.room._redKills); this.writeH((short)this.room._redDeaths); this.writeH((short)this.room._blueKills); this.writeH((short)this.room._blueDeaths); for (int index = 0; index < 16; ++index) { SLOT slot = this.room._slots[index]; this.writeH((short)slot.allKills); this.writeH((short)slot.allDeaths); } if (this.killer.killsOnLife == 2) { this.writeC((byte)1); } else if (this.killer.killsOnLife == 3) { this.writeC((byte)2); } else if (this.killer.killsOnLife > 3) { this.writeC((byte)3); } else { this.writeC((byte)0); } this.writeH((ushort)this.kills.Score); if (this.room.room_type != (byte)7) { return; } this.writeH((ushort)this.room.red_dino); this.writeH((ushort)this.room.blue_dino); }
public async Task <Frag> GetFiltered(Frag item) { var all = await GetAll(); await firebase .Child("Frags") .OnceAsync <Frag>(); return(all.Where(a => a.Estatus == item.Estatus).FirstOrDefault()); }
public async Task <Frag> GetOne(Frag item) { var all = await GetAll(); await firebase .Child("Frags") .OnceAsync <Frag>(); return(all.Where(a => a.Id == item.Id).FirstOrDefault()); }
public override void Write() { WriteH(3355); WriteC((byte)kills.killingType); WriteC(kills.killsCount); WriteC(kills.killerIdx); WriteD(kills.weaponId); WriteT(kills.x); WriteT(kills.y); WriteT(kills.z); WriteC(kills.flag); for (int i = 0; i < kills.frags.Count; i++) { Frag frag = kills.frags[i]; WriteC(frag.victimWeaponClass); WriteC(frag.hitspotInfo); WriteH((short)frag.killFlag); WriteC(frag.flag); WriteT(frag.x); WriteT(frag.y); WriteT(frag.z); } WriteH(room.redKills); WriteH(room.redDeaths); WriteH(room.blueKills); WriteH(room.blueDeaths); for (int i = 0; i < 16; i++) { Slot slot = room.slots[i]; WriteH(slot.allKills); WriteH(slot.allDeaths); } if (killer.killsOnLife == 2) { WriteC(1); } else if (killer.killsOnLife == 3) { WriteC(2); } else if (killer.killsOnLife > 3) { WriteC(3); } else { WriteC(0); } WriteH(kills.Score); if (room.mode == RoomTypeEnum.Dino) { WriteH(room.redDino); WriteH(room.blueDino); } }
public override void write() { writeH(3355); writeC((byte)kills.killingType); writeC(kills.killsCount); writeC(kills.killerIdx); writeD(kills.weapon); writeT(kills.x); writeT(kills.y); writeT(kills.z); writeC(kills.flag); for (int i = 0; i < kills.frags.Count; i++) { Frag frag = kills.frags[i]; writeC(frag.victimWeaponClass); writeC(frag.hitspotInfo); writeH((short)frag.killFlag); writeC(frag.flag); writeT(frag.x); writeT(frag.y); writeT(frag.z); } writeH((short)room._redKills); writeH((short)room._redDeaths); writeH((short)room._blueKills); writeH((short)room._blueDeaths); for (int i = 0; i < 16; i++) { SLOT slot = room._slots[i]; writeH((short)slot.allKills); writeH((short)slot.allDeaths); } if (killer.killsOnLife == 2) { writeC(1); } else if (killer.killsOnLife == 3) { writeC(2); } else if (killer.killsOnLife > 3) { writeC(3); } else { writeC(0); } writeH((ushort)kills.Score); if ((RoomType)room.room_type == RoomType.Boss) { writeH((ushort)room.red_dino); writeH((ushort)room.blue_dino); } }
private void initialize(Frag parent, Vector3 direction, Quaternion orientation) { mesh = parent.mesh; material = parent.material; depth = parent.depth + 1; maxDepth = parent.maxDepth; transform.parent = parent.transform; childScale = parent.childScale; transform.localScale = Vector3.one * childScale; transform.localPosition = direction * (0.5f + 0.5f * childScale); transform.localRotation = orientation; }
// Given fragments a and b, returns ab; a|b private Frag cat(Frag f1, Frag f2) { // concat of failure is failure if (f1.i == 0 || f2.i == 0) { return(fail()); } // TODO(rsc): elide nop prog.patch(f1.@out, f2.i); return(new Frag(f1.i, f2.@out)); }
public Nuevo(Frag frag = null) { try { InitializeComponent(); } catch (Exception ex) { Logger.Error(ex, "Error al registrar una venta : BtnGuardarVenta_Clicked"); DisplayAlert("Error ", ex.Message, "OK"); } }
// Given fragment a, returns (a) capturing as \n. // Given a fragment a, returns a fragment with capturing parens around a. private Frag cap(int arg) { Frag f = newInst(Inst.InstOp.CAPTURE); f.@out = f.i << 1; prog.getInst(f.i).arg = arg; if (prog.numCap < arg + 1) { prog.numCap = arg + 1; } return(f); }
//value public Frag(string val, int newDepth) { isRoot = false; isValue = true; isOperation = false; isEnclosure = false; value = val; operation = null; linkL = null; linkR = null; openPos = -1; closePos = -1; }
//default public Frag() { isRoot = false; isValue = false; isOperation = false; isEnclosure = false; depth = -1; value = "default"; operation = null; linkL = null; linkR = null; openPos = -1; closePos = -1; }
//operation public Frag(string op, int newDepth, Frag left, Frag right) { isRoot = false; isValue = false; isOperation = true; isEnclosure = false; depth = newDepth; value = null; operation = op; linkL = left; linkR = right; openPos = -1; closePos = -1; }
//enclosure public Frag(int newDepth, string op, Frag left, Frag right, int openParenthesis, int closeParenthesis) { isRoot = false; isValue = false; isOperation = false; isEnclosure = true; depth = newDepth; value = null; operation = op; linkL = left; linkR = right; openPos = -1; closePos = -1; }
public void testFrag() { string weapon = "usp_silencer"; string headShot = $"L 13:37 spam: \"Prince<12><STEAM_1:1:123338101><CT>\" [2264 19 128] killed \"Bot<11><STEAM_1:0:123371565><TERRORIST>\" [1938 -198 320] with \"{weapon}\" (headshot)"; string kill = $"L 13:37 spam: \"Prince<12><STEAM_1:1:123338101><CT>\" [2264 19 128] killed \"Bot<11><STEAM_1:0:123371565><TERRORIST>\" [1938 -198 320] with \"{weapon}\""; FragParser parser = new FragParser(); Assert.IsTrue(parser.IsMatch(headShot)); Assert.IsTrue(parser.IsMatch(kill)); Frag hsFarg = parser.Parse(headShot); Frag frag = parser.Parse(kill); Assert.IsTrue(hsFarg.Headshot); Assert.IsFalse(frag.Headshot); Assert.AreEqual(frag.Weapon, weapon); }
protected virtual void eventsManager_PlayerKilled(object sender, PlayerKilledEventArgs e) { if (game.IsStarted) { Frag frag = new Frag(); frag.Killer = game.GetPlayer(e.Killer.SteamID); frag.Victim = game.GetPlayer(e.Victim.SteamID); frag.Assist = (e.Assist != null) ? game.GetPlayer(e.Assist.SteamID) : null; frag.Headshot = e.Headshot; frag.Penetrated = (e.PenetratedObjects > 0) ? true : false; frag.Weapon = e.Weapon.OriginalString; game.Rounds.Last().Frags.Add(frag); game.GetPlayer(e.Killer.SteamID).Frags.Add(frag); game.Frags.Add(frag); } }
// Use this for initialization void Start() { root = new Frag("*", 0); if (eqTree == null) { Debug.Log("Should be null right now."); } eqTree = new EquationTree <Frag> (root, true); if (eqTree == null) { Debug.Log("I wonder why it's still null."); } eqTree.node.ConnectLeft(new Frag("+", 1)); eqTree.node.linkL.ConnectLeft(new Frag("/", 2)); eqTree.node.linkL.linkL.ConnectLeft(new Frag("2", 3)); eqTree.node.linkL.linkL.ConnectRight(new Frag("5", 3)); eqTree.node.linkL.ConnectRight(new Frag("7", 2)); eqTree.node.ConnectRight(new Frag("*", 1)); eqTree.node.linkR.ConnectLeft(new Frag("-", 2)); eqTree.node.linkR.linkL.ConnectLeft(new Frag("4", 3)); eqTree.node.linkR.linkL.ConnectRight(new Frag("3", 3)); eqTree.node.linkR.ConnectRight(new Frag("/", 2)); eqTree.node.linkR.linkR.ConnectLeft(new Frag("+", 3)); eqTree.node.linkR.linkR.linkL.ConnectLeft(new Frag("2", 4)); eqTree.node.linkR.linkR.linkL.ConnectRight(new Frag("1", 4)); eqTree.node.linkR.linkR.ConnectRight(new Frag("5", 3)); // eqTree.AddChild(new Frag("1", 1));//every add child pushes previous ones lower // eqTree.AddChild(new Frag("2", 2)); // eqTree.AddChild (new Frag ("3", 3)); // eqTree.AddChild(new Frag("7", 7)); // eqTree.AddChild(new Frag("11", 11)); // for (int i = 0; i < 10; i++) { // if (eqTree.GetChild (i) == null) { // Debug.Log ("eqTree at " + i + " is null."); // } else { // Debug.Log ("eqTree at " + i + " is " + eqTree.GetChild(i).GetData().value);//eqTree.GetChild returns an EquationTree<Frag> not a Frag // } // } Debug.Log("Rightmost leaf is: " + eqTree.node.linkR.linkR.linkR.value); }
// Given a fragment a, returns a fragment for a* or a*? (if nongreedy) private Frag star(Frag f1, bool nongreedy) { Frag f = newInst(Inst.InstOp.ALT); Inst i = prog.getInst(f.i); if (nongreedy) { i.arg = f1.i; f.@out = f.i << 1; } else { i.@out = f1.i; f.@out = f.i << 1 | 1; } prog.patch(f1.@out, f.i); return(f); }
// Given a fragment for a, returns a fragment for a? or a?? (if nongreedy) private Frag quest(Frag f1, bool nongreedy) { Frag f = newInst(Inst.InstOp.ALT); Inst i = prog.getInst(f.i); if (nongreedy) { i.arg = f1.i; f.@out = f.i << 1; } else { i.@out = f1.i; f.@out = f.i << 1 | 1; } f.@out = prog.append(f.@out, f1.@out); return(f); }
public void AddFrag(Frag frag) { frag.Next = Frags; Frags = frag; }