예제 #1
0
        public void GetSquadCurrentEnergy(SquadCurrentEnergy e, UserInSquadNode userInSquad, [JoinBySquad, Combine] UserInSquadNode user, [JoinByUser] EnergyItemNode userEnergy, [JoinByUser] UserInSquadNode user1, [JoinByLeague] LeagueNode league)
        {
            UserGiftEnergyEvent eventInstance = new UserGiftEnergyEvent();

            base.ScheduleEvent(eventInstance, user);
            long num = (long)Mathf.Min((float)league.leagueEnergyConfig.Cost, (float)(userEnergy.userItemCounter.Count + eventInstance.totalGift));

            e.CurrentEnergy += num;
        }
예제 #2
0
        public void GetEnergyPriceEvent(EnergyPriceEvent e, UserInSquadNode userInSquad, [JoinByUser] EnergyItemNode energy, [JoinByMarketItem] SingleNode <XPriceItemComponent> priceNode)
        {
            long num = (long)Math.Ceiling((double)((priceNode.component.Price * e.count) / ((double)priceNode.component.Pieces)));

            e.price = num;
        }
예제 #3
0
 public void GetSelfExcessEnergy(SelfExcessEnergyEvent e, Node any, [JoinAll] SelfUserInSquadNode selfUserInSquad, [JoinByUser] EnergyItemNode selfEnergy, [JoinByUser] SelfUserInSquadNode selfUserInSquad1, [JoinByLeague] LeagueNode selfLeague)
 {
     e.ExcessEnergy = (selfEnergy.userItemCounter.Count - selfLeague.leagueEnergyConfig.Cost) - this.GetPayed(selfUserInSquad);
 }
예제 #4
0
 public void EnergyAdded(NodeAddedEvent e, EnergyItemNode energy, [JoinByUser] UserInSquadNode user, [JoinByUser] UserEnergyCellNode userCell, [JoinByUser] UserInSquadNode userInSquad, [JoinByLeague] LeagueNode league)
 {
     this.UpdateEnergyCell(user, userCell, energy, league);
     this.UpdateSquadTeleportInfo(user);
 }
예제 #5
0
 public void UpdateEnergyCells(SquadEnergyChangedEvent e, SquadNode squad, [JoinBySquad] SelfUserInSquadNode selfUserInSquad, [JoinBySquad, Combine] UserInSquadNode user, [JoinByUser] UserEnergyCellNode userCell, [JoinByUser] EnergyItemNode energy, [JoinByUser] UserInSquadNode userInSquad, [JoinByLeague] LeagueNode league)
 {
     this.UpdateEnergyCell(user, userCell, energy, league);
 }
예제 #6
0
        private void UpdateEnergyCell(UserInSquadNode user, [JoinByUser] UserEnergyCellNode userCell, [JoinByUser] EnergyItemNode energy, [JoinByLeague] LeagueNode league)
        {
            UserGiftEnergyEvent eventInstance = new UserGiftEnergyEvent();

            base.ScheduleEvent(eventInstance, user);
            userCell.userEnergyCellUi.Setup(user.userUid.Uid, energy.userItemCounter.Count + eventInstance.totalGift, league.leagueEnergyConfig.Cost);
            userCell.userEnergyCellUi.SetGiftValue(eventInstance.totalGift, eventInstance.uids);
        }
예제 #7
0
        public void SetSelfEnergy(UpdateSelfUserEnergyEvent e, SelfUserInSquadNode user, [JoinByUser] EnergyItemNode energy, SelfUserInSquadNode user1, [JoinByLeague] LeagueNode league, [JoinAll] UserEnergyBarNode screen)
        {
            UserGiftEnergyEvent eventInstance = new UserGiftEnergyEvent();

            base.ScheduleEvent(eventInstance, user);
            screen.userEnergyBarUi.SetEnergyLevel((energy.userItemCounter.Count - this.GetPayed(user)) + eventInstance.totalGift, league.leagueEnergyConfig.Capacity);
        }
예제 #8
0
 public void SetEnergy(UpdateClientEnergyEvent e, EnergyItemNode energy, [JoinByUser] UserInSquadNode user, [JoinAll] SelfUserInSquadNode selfUser)
 {
     base.ScheduleEvent <UpdateSelfUserEnergyEvent>(selfUser);
 }