Beispiel #1
0
    public IEnumerator DelPileCharacter(GameObject obj)
    {
        MTuple <GameObject, MyCharacter> tof = PanelList.Find(x => x.a == obj);

        if (tof.b.me.classe == Character.Classe.Sport)
        {
            PlayerCntl.airControl = false;
        }
        tof.a.GetComponent <CharacterPanelDelete>().StartTimer(tof.b.me.exitLine);
        yield return(new WaitForSeconds(1));

        PlayerCntl.score -= tof.b.me.weight / Character.WeightMultiplicator;
        PanelList.Remove(tof);
        tof.a.SetActive(false);
        tof.b.gameObject.transform.parent = null;
        Rigidbody2D rb = tof.b.GetComponent <Rigidbody2D>();

        rb.bodyType = RigidbodyType2D.Dynamic;
        rb.AddForce(new Vector2(-15f, 8f), ForceMode2D.Impulse);
        rb.AddTorque(20f, ForceMode2D.Impulse);

        for (int i = 0; i < PanelList.Count; ++i)
        {
            PanelList[i].b.transform.position = PlayerCntlObj.transform.position + new Vector3(0f, .8f) * (1 + i);
            PanelList[i].a.transform.position = new Vector3(i * 100 + 30, PanelList[i].a.transform.position.y);
            PanelList[i].b.GetComponent <SpriteRenderer>().sortingOrder = 999 - i;
        }
        PlayerCntl.speed += tof.b.me.weight;
    }
    /// <summary>
    /// Creates the pin device and start listening. This is useful when the device also manages pins
    /// </summary>
    /// <returns>The pin device and start listening.</returns>
    /// <param name="pinDevice">Pin device.</param>
    /// <param name="channel">Channel.</param>
    public MTuple <PinDevice, IMatchMonitor> CreatePinDeviceAndStartListening(PinDevice pinDevice, MatchChannel channel)
    {
        var createdDevice = CreatePinDevice(pinDevice);
        var monitor       = SubscribeMatches(channel, createdDevice);

        return(MTuple.New(createdDevice, monitor));
    }
        private Multiset readMultiset(XPathNavigator parentNode, bool ignoreNullValues, Multiset x = null)
        {
            if (parentNode == null)
            {
                return(x);
            }

            if (x == null)
            {
                x = new Multiset();
            }

            XPathNodeIterator mss = parentNode.SelectChildren("ms", String.Empty);

            while (mss.MoveNext())
            {
                MTuple t = readTuple(mss.Current);
                if (t != null)
                {
                    x.Add(t.Obj, t.Multiplicity, ignoreNullValues);
                }
            }

            return(x);
        }
 private void WriteTuple(MTuple t)
 {
     owt.Write(t.Multiplicity + t.Obj);
 }