예제 #1
0
파일: Actor.cs 프로젝트: endlosnull/GGJ16
	public void DoActionBravo()
	{
		sequencer.RunSequence(1);
        LockInput effect = new LockInput();
        effect.duration = sequencer.sequences[1].TotalDuration;
        effect.target = gameObject;
        AddStatusEffect(effect);

        body.SetShadowColor(Color.red, 1f);
	}
예제 #2
0
파일: Actor.cs 프로젝트: endlosnull/GGJ16
	public void DoActionAlpha()
	{
		sequencer.RunSequence(0);
		LockInput effect = new LockInput();
		effect.duration = sequencer.sequences[0].TotalDuration;
		effect.target = gameObject;
		AddStatusEffect(effect);

		body.SetShadowColor(Color.blue, 1f);
	}
예제 #3
0
        public override Empty Lock(LockInput input)
        {
            AssertLockAddress(input.Symbol, input.To);
            AssertValidToken(input.Symbol, input.Amount);
            var fromVirtualAddress = Hash.FromRawBytes(Context.Sender.Value.Concat(input.LockId.Value).ToArray());
            var virtualAddress     = Context.ConvertVirtualAddressToContractAddress(fromVirtualAddress);

            // Transfer token to virtual address.
            DoTransfer(input.From, virtualAddress, input.Symbol, input.Amount, input.Usage);
            return(new Empty());
        }
예제 #4
0
        public override Empty Lock(LockInput input)
        {
            AssertLockAddress(input.Symbol);
            var allowance = State.Allowances[input.Address][Context.Sender][input.Symbol];

            if (allowance >= input.Amount)
            {
                State.Allowances[input.Address][Context.Sender][input.Symbol] = allowance.Sub(input.Amount);
            }
            AssertValidToken(input.Symbol, input.Amount);
            var fromVirtualAddress = Hash.FromRawBytes(Context.Sender.Value.Concat(input.Address.Value)
                                                       .Concat(input.LockId.Value).ToArray());
            var virtualAddress = Context.ConvertVirtualAddressToContractAddress(fromVirtualAddress);

            // Transfer token to virtual address.
            DoTransfer(input.Address, virtualAddress, input.Symbol, input.Amount, input.Usage);
            return(new Empty());
        }
예제 #5
0
        public override Empty Lock(LockInput input)
        {
            AssertSystemContractOrLockWhiteListAddress(input.Symbol);
            Assert(Context.Origin == input.Address, "Lock behaviour should be initialed by origin address.");
            var allowance = State.Allowances[input.Address][Context.Sender][input.Symbol];

            if (allowance >= input.Amount)
            {
                State.Allowances[input.Address][Context.Sender][input.Symbol] = allowance.Sub(input.Amount);
            }
            AssertValidToken(input.Symbol, input.Amount);
            var fromVirtualAddress = HashHelper.ComputeFrom(Context.Sender.Value.Concat(input.Address.Value)
                                                            .Concat(input.LockId.Value).ToArray());
            var virtualAddress = Context.ConvertVirtualAddressToContractAddress(fromVirtualAddress);

            // Transfer token to virtual address.
            DoTransfer(input.Address, virtualAddress, input.Symbol, input.Amount, input.Usage);
            return(new Empty());
        }
예제 #6
0
 private void LockToken(LockInput lockInput)
 {
     ValidateTokenContract();
     State.TokenContract.Lock.Send(lockInput);
 }
예제 #7
0
파일: Actor.cs 프로젝트: endlosnull/GGJ16
    public void BeSwatted()
    {
        Ball ball = this.ownedBall;
        LosePossession();

		LockInput effect = new LockInput();
		effect.duration = 0.5f;
		effect.target = gameObject;
		AddStatusEffect(effect);

        ball.physics.velocity += Vector3.down * 8;
        AudioManager.Instance.PlayOneShot(controller.actor.audioSource, AudioManager.Instance.swat);
    }