当前位置: 首页>>代码示例>>C#>>正文


C# Traits.PowerManager类代码示例

本文整理汇总了C#中OpenRA.Traits.PowerManager的典型用法代码示例。如果您正苦于以下问题:C# PowerManager类的具体用法?C# PowerManager怎么用?C# PowerManager使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


PowerManager类属于OpenRA.Traits命名空间,在下文中一共展示了PowerManager类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Building

 public Building(ActorInitializer init)
 {
     this.self = init.self;
     this.topLeft = init.Get<LocationInit,int2>();
     this.Info = self.Info.Traits.Get<BuildingInfo>();
     this.PlayerPower = init.self.Owner.PlayerActor.Trait<PowerManager>();
 }
开发者ID:geckosoft,项目名称:OpenRA,代码行数:7,代码来源:Building.cs

示例2: OreRefinery

 public OreRefinery(Actor self, OreRefineryInfo info)
 {
     this.self = self;
     Info = info;
     PlayerResources = self.Owner.PlayerActor.Trait<PlayerResources>();
     PlayerPower = self.Owner.PlayerActor.Trait<PowerManager>();
 }
开发者ID:patthoyts,项目名称:OpenRA,代码行数:7,代码来源:OreRefinery.cs

示例3: BaseBuilder

		public BaseBuilder(HackyAI ai, string category, Player p, PowerManager pm, PlayerResources pr)
		{
			this.ai = ai;
			world = p.World;
			player = p;
			playerPower = pm;
			playerResources = pr;
			this.category = category;
		}
开发者ID:JackKucan,项目名称:OpenRA,代码行数:9,代码来源:BaseBuilder.cs

示例4: ProductionItem

 public ProductionItem(ProductionQueue queue, string item, int cost, PowerManager pm, Action onComplete)
 {
     Item = item;
     RemainingTime = TotalTime = 1;
     RemainingCost = TotalCost = cost;
     OnComplete = onComplete;
     Queue = queue;
     this.pm = pm;
 }
开发者ID:RobotCaleb,项目名称:OpenRA,代码行数:9,代码来源:ProductionQueue.cs

示例5: BaseBuilder

		public BaseBuilder(HackyAI ai, string category, Player p, PowerManager pm, PlayerResources pr)
		{
			this.ai = ai;
			world = p.World;
			player = p;
			playerPower = pm;
			playerResources = pr;
			this.category = category;
			failRetryTicks = ai.Info.StructureProductionResumeDelay;
		}
开发者ID:Roger-luo,项目名称:OpenRA,代码行数:10,代码来源:BaseBuilder.cs

示例6: Building

        public Building(ActorInitializer init)
        {
            this.self = init.self;
            this.topLeft = init.Get<LocationInit,int2>();
            Info = self.Info.Traits.Get<BuildingInfo>();
            self.CenterLocation = Game.CellSize
                * ((float2)topLeft + .5f * (float2)Info.Dimensions);

            PlayerPower = init.self.Owner.PlayerActor.Trait<PowerManager>();
        }
开发者ID:pdovy,项目名称:OpenRA,代码行数:10,代码来源:Building.cs

示例7: ProductionItem

 public ProductionItem(ProductionQueue queue, string item, int cost, PowerManager pm, Action onComplete)
 {
     Item = item;
     RemainingTime = TotalTime = 1;
     RemainingCost = TotalCost = cost;
     OnComplete = onComplete;
     Queue = queue;
     this.pm = pm;
     ai = Queue.Actor.World.Map.Rules.Actors[Item];
     bi = ai.TraitInfo<BuildableInfo>();
 }
开发者ID:OpenRA,项目名称:OpenRA,代码行数:11,代码来源:ProductionQueue.cs

示例8: Activate

        public void Activate(Player p)
        {
            this.p = p;
            this.world = p.World;
            GameStarted = true;

            random = new XRandom((int)p.PlayerActor.ActorID);

            SpecialPowers = p.PlayerActor.Trait<SupportPowerManager>();
            Power = p.PlayerActor.Trait<PowerManager>();
            Resources = p.PlayerActor.Trait<PlayerResources>();

            squadmanager = new SquadManager(this);

            // Initialize builders
            Builders = new List<IAIBuilder>() { new BaseBuilder(this), new DefenseBuilder(this),
                new InfantryBuilder(this), new VehicleBuilder(this),
                new AircraftBuilder(this), new ShipBuilder(this) };

            // Have the bot cheat, gets free 500 000 credits at the start of the match
            Resources.GiveCash(500000);
        }
开发者ID:Iran,项目名称:ClassicRA,代码行数:22,代码来源:IranAI.cs

示例9: OnOwnerChanged

 public void OnOwnerChanged(Actor self, Player oldOwner, Player newOwner)
 {
     power = newOwner.PlayerActor.Trait<PowerManager>();
 }
开发者ID:CH4Code,项目名称:OpenRA,代码行数:4,代码来源:PowerMultiplier.cs

示例10: PowerMultiplier

 public PowerMultiplier(Actor self, PowerMultiplierInfo info)
     : base(info, "PowerMultiplier", self.Info.Name)
 {
     power = self.Owner.PlayerActor.Trait<PowerManager>();
 }
开发者ID:CH4Code,项目名称:OpenRA,代码行数:5,代码来源:PowerMultiplier.cs

示例11: ProductionQueue

        public ProductionQueue( Actor self, Actor playerActor, ProductionQueueInfo info )
        {
            this.self = self;
            this.Info = info;
            playerResources = playerActor.Trait<PlayerResources>();
            PlayerPower = playerActor.Trait<PowerManager>();

            Race = self.Owner.Country;
            Produceable = InitTech(playerActor);
        }
开发者ID:nevelis,项目名称:OpenRA,代码行数:10,代码来源:ProductionQueue.cs

示例12: OnCapture

        public void OnCapture(Actor self, Actor captor, Player oldOwner, Player newOwner)
        {
            PlayerPower = newOwner.PlayerActor.Trait<PowerManager>();
            playerResources = newOwner.PlayerActor.Trait<PlayerResources>();
            ClearQueue();

            // Produceable contains the tech from the original owner - this is desired so we don't clear it.
            Produceable = InitTech(self.Owner.PlayerActor);

            // Force a third(!) tech tree update to ensure that prerequisites are correct.
            // The first two updates are triggered by adding/removing the actor when
            // changing ownership, *before* the new techtree watchers have been set up.
            // This is crap.
            self.Owner.PlayerActor.Trait<TechTree>().Update();
        }
开发者ID:nevelis,项目名称:OpenRA,代码行数:15,代码来源:ProductionQueue.cs

示例13: PowerTooltip

 public PowerTooltip(Actor self)
 {
     this.self = self;
     powerManager = self.Owner.PlayerActor.Trait<PowerManager>();
     developerMode = self.Owner.PlayerActor.Trait<DeveloperMode>();
 }
开发者ID:CH4Code,项目名称:OpenRA,代码行数:6,代码来源:PowerTooltip.cs

示例14: Activate

		// Called by the host's player creation code
		public void Activate(Player p)
		{
			Player = p;
			enabled = true;
			playerPower = p.PlayerActor.Trait<PowerManager>();
			supportPowerMngr = p.PlayerActor.Trait<SupportPowerManager>();
			playerResource = p.PlayerActor.Trait<PlayerResources>();

			foreach (var building in Info.BuildingQueues)
				builders.Add(new BaseBuilder(this, building, p, playerPower, playerResource));
			foreach (var defense in Info.DefenseQueues)
				builders.Add(new BaseBuilder(this, defense, p, playerPower, playerResource));

			Random = new MersenneTwister((int)p.PlayerActor.ActorID);

			// Avoid all AIs trying to rush in the same tick, randomize their initial rush a little.
			var smallFractionOfRushInterval = Info.RushInterval / 20;
			rushTicks = Random.Next(Info.RushInterval - smallFractionOfRushInterval, Info.RushInterval + smallFractionOfRushInterval);

			// Avoid all AIs reevaluating assignments on the same tick, randomize their initial evaluation delay.
			assignRolesTicks = Random.Next(0, Info.AssignRolesInterval);
			attackForceTicks = Random.Next(0, Info.AttackForceInterval);
			minAttackForceDelayTicks = Random.Next(0, Info.MinimumAttackForceDelay);

			resourceTypeIndices = new BitArray(World.TileSet.TerrainInfo.Length); // Big enough
			foreach (var t in Map.Rules.Actors["world"].TraitInfos<ResourceTypeInfo>())
				resourceTypeIndices.Set(World.TileSet.GetTerrainIndex(t.TerrainType), true);
		}
开发者ID:Roger-luo,项目名称:OpenRA,代码行数:29,代码来源:HackyAI.cs

示例15: ProductionQueue

        public ProductionQueue(ActorInitializer init, Actor playerActor, ProductionQueueInfo info)
        {
            self = init.Self;
            Info = info;
            playerResources = playerActor.Trait<PlayerResources>();
            playerPower = playerActor.Trait<PowerManager>();
            developerMode = playerActor.Trait<DeveloperMode>();

            Faction = init.Contains<FactionInit>() ? init.Get<FactionInit, string>() : self.Owner.Faction.InternalName;
            Enabled = !info.Factions.Any() || info.Factions.Contains(Faction);

            CacheProducibles(playerActor);
            allProducibles = producible.Where(a => a.Value.Buildable || a.Value.Visible).Select(a => a.Key);
            buildableProducibles = producible.Where(a => a.Value.Buildable).Select(a => a.Key);
        }
开发者ID:CH4Code,项目名称:OpenRA,代码行数:15,代码来源:ProductionQueue.cs


注:本文中的OpenRA.Traits.PowerManager类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。