public void PopulateButton(ResourceGenerator reference_generator) { CostText.text = string.Format("Cost: {0} Gold", reference_generator.Cost); FoodGenText.text = string.Format("{0} Food / Turn", reference_generator.ResourcesPerTurn[0]); SugarGenText.text = string.Format("{0} Sugar / Turn", reference_generator.ResourcesPerTurn[1]); SpiceGenText.text = string.Format("{0} Spice / Turn", reference_generator.ResourcesPerTurn[2]); }
void GenerateResources() { Resources = new List <ResourceGenerator>(); LandHex parent_hex = transform.parent.GetComponent <LandHex>(); if (!parent_hex) { return; } foreach (HexCoordinate hc in parent_hex.Directions) { HexTile neighbor = parent_hex.GetNeighbor(hc); if (neighbor && !neighbor.IsWater) { if (neighbor.transform.childCount < 1) { ResourceGenerator new_resource = Instantiate(ResourceGeneratorPrefab).GetComponent <ResourceGenerator>(); new_resource.transform.SetParent(neighbor.transform); new_resource.transform.position = neighbor.transform.position + new Vector3(0.0f, 2.0f); new_resource.transform.localScale = new Vector3(0.01f, 0.1f, 0.01f); Resources.Add(new_resource); } } } }
private void Update() { int nearbyResourceAmount = ResourceGenerator.GetNearbyResourceAmount(resourceGeneratorData, transform.position - transform.localPosition); float percent = Mathf.RoundToInt((float)nearbyResourceAmount / resourceGeneratorData.maxResourceAmount * 100f); transform.Find("Text").GetComponent <TextMeshPro>().SetText(percent + "%"); }
public void DecorateClass(IResource resource, string className, CodeTypeDeclaration resourceClass, ResourceClassGenerator generator, string serviceClassName, IEnumerable<IResourceDecorator> allDecorators) { var gen = new ResourceGenerator(className, objectTypeProvider, commentCreator); foreach (var method in resource.Methods.Values) { logger.Debug("Adding RequestObject Method {0}.{1}", resource.Name, method.Name); // Add the default request method to the class: CodeTypeMember convenienceMethod = gen.CreateMethod(resourceClass, resource, method, false); if (convenienceMethod != null) { resourceClass.Members.Add(convenienceMethod); } // Add the request method specifiying all parameters (also optional ones) to the class: if (AddOptionalParameters && method.HasOptionalParameters()) { convenienceMethod = gen.CreateMethod(resourceClass, resource, method, true); if (convenienceMethod != null) { resourceClass.Members.Add(convenienceMethod); } } } }
// Use this for initialization void Awake() { InstanceResourceGenerator = this; stats = GameObject.Find("Stats").GetComponent <Stats>(); Initialize(); InitializeEconomy(); }
public override void SpawnUnit(Cell cell) { bool canAfford = true; foreach (ResourceCost cost in Costs) { if (!cost.CanAfford()) { canAfford = false; } } if (canAfford && cell != null) { foreach (ResourceCost cost in Costs) { cost.Resource.ReduceAmount(cost.Cost); } ResourceGenerator newUnit = Instantiate(prototype); newUnit.Initialize(resourcePrototype, gameController); newUnit.transform.SetParent(cell.transform, false); } }
public ActionResult DeleteConfirmed(long id) { ResourceGenerator resourceGenerator = db.ResourceGenerators.Find(id); db.ResourceGenerators.Remove(resourceGenerator); db.SaveChanges(); return(RedirectToAction("Index")); }
private void Awake() { instance = this; // store map's size. width = Planet.instance.Width; height = Planet.instance.Height; }
private void Update() { int nearbyResources = ResourceGenerator.GetNearbyResources(_resourceGeneratorData, transform.position - transform.localPosition); float percent = Mathf.RoundToInt((float)nearbyResources / _resourceGeneratorData.maxResourceAmount * 100f); _text.SetText(percent.ToString() + "%"); }
public void Initialize(ResourceGenerator generator, GameController gameController) { unit.Initialize(gameController); unit.OnTickEvent.AddListener(OnTick); foreach (ResourceGeneration generation in generator.ResourcesPerTick) { ResourcesPerTick.Add(new ResourceGeneration(generation.Resource, generation.Amount, generation.RemoveResource)); } }
public ActionResult Edit([Bind(Include = "Id,Name,Level")] ResourceGenerator resourceGenerator) { if (ModelState.IsValid) { db.Entry(resourceGenerator).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(resourceGenerator)); }
protected override void GenerateFramebuffer() { var textureDescription = ResourceGenerator.CreateEmptyCubeMapTextureDescription(1024); var depthTexture = _factory.CreateTexture(textureDescription); depthTexture.Name = "OmniShadowCubeTexture"; ShadowMapTexView = _factory.CreateTextureView(depthTexture); _frameBuffer = _factory.CreateFramebuffer(new FramebufferDescription(depthTexture, Array.Empty<Texture>())); }
public static void RandomSeed(StudentDbContext context) { for (int i = 0; i < 100; i++) { context.Add(StudentGenerator.GenerateStudent()); context.Add(CourseGenerator.GenerateCourse()); context.Add(ResourceGenerator.GenerateResource()); context.SaveChanges(); } }
public ActionResult Create([Bind(Include = "Id,Name,Level")] ResourceGenerator resourceGenerator) { if (ModelState.IsValid) { db.ResourceGenerators.Add(resourceGenerator); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(resourceGenerator)); }
private static void SeedResources(StudentSystemContext context, int count) { var resourceGenerator = new ResourceGenerator(); for (int i = 0; i < count; i++) { context.Resources.Add(resourceGenerator.NewResource()); } context.SaveChanges(); }
public void WriteToString_ShouldGenerateResourceFile() { var resources = CreateResourceData(); var generator = ResourceGenerator.CreateGenerator(resources); var generatedResourceData = generator.WriteToString(); Assert.NotEmpty(generatedResourceData); Assert.Contains("KeyString1", generatedResourceData); Assert.Contains("MaxLength", generatedResourceData); }
private bool CanSpawnBuilding(BuildingTypeSo buildingType, Vector2 position, out string errorMessage) { var boxCollider2d = buildingType.prefab.GetComponent <BoxCollider2D>(); var colliders2dArray = Physics2D.OverlapBoxAll(position + boxCollider2d.offset, boxCollider2d.size, 0); bool isAreaClear = colliders2dArray.Length == 0; if (!isAreaClear) { errorMessage = "Area is not clear!"; return(false); } colliders2dArray = Physics2D.OverlapCircleAll(position, buildingType.minConstructionRadius); foreach (var collider2D in colliders2dArray) { //Colliders inside the construction radius var buildingTypeHolder = collider2D.GetComponent <BuildingTypeHolder>(); if (buildingTypeHolder && buildingTypeHolder.buildingType == buildingType) { //There's already building type within the construction radius errorMessage = "Too close to another building of the same type!"; return(false); } } if (buildingType.hasResourceGeneratorData) { var resourceGeneratorData = buildingType.resourceGeneratorData; int nearbyResourceAmount = ResourceGenerator.GetNearbyResourceAmount(resourceGeneratorData, position); if (nearbyResourceAmount == 0) { errorMessage = "There are no nearby Resource Nodes!"; return(false); } } colliders2dArray = Physics2D.OverlapCircleAll(position, maxConstructionRadius); foreach (var collider2D in colliders2dArray) { //Colliders inside the construction radius var buildingTypeHolder = collider2D.GetComponent <BuildingTypeHolder>(); if (buildingTypeHolder) { //It's not too far from other buildings on the map errorMessage = ""; return(true); } } errorMessage = "Too far from any other building!"; return(false); }
public void InitPlanet(PlanetType type, NoiseSettings noise, float radius) { shapeGenerator = new ShapeGenerator(noise, radius); colorGenerator = new ColorGenerator(colorSettings); meshFilters = new MeshFilter[6]; meshColliders = new MeshCollider[6]; resourceGenerator = new ResourceGenerator(this.GetComponent <Planet>(), mineType, treeType, noiseSettings); planetFaces = new PlanetFace[6]; this.type = type; GeneratePlanet(); loaded = true; }
internal async Task <int> Main() { var plugin = new Name(this.Plugin); Definition definition; try { Environment.CurrentDirectory = PathManager.FindResource(); definition = Definition.Load(Program.DefinitionFile); } catch (FileNotFoundException ex) { Console.WriteLine(ex.Message); Console.WriteLine("Use `nfpm init` to setup NFive in this directory"); return(1); } definition.Dependencies?.Remove(plugin); var venderPath = Path.Combine(Environment.CurrentDirectory, Program.PluginPath, plugin.Vendor); if (Directory.Exists(venderPath)) { var projectPath = Path.Combine(venderPath, plugin.Project); if (Directory.Exists(projectPath)) { Directory.Delete(projectPath, true); } if (!Directory.EnumerateFileSystemEntries(venderPath).Any()) { Directory.Delete(venderPath); } } // TODO: Remove orphaned child dependencies var graph = new DefinitionGraph(); await graph.Build(definition); await graph.Apply(); definition.Save(Program.DefinitionFile); graph.Save(); ResourceGenerator.Serialize(graph).Save(); return(0); }
// Start is called before the first frame update public PlanetFace(Planet planet, ResourceGenerator rg, ShapeGenerator shapeGenerator, Mesh mesh, MeshCollider collider, int resolution, Vector3 localUp, bool isTutorialWorld) { this.context = planet; this.shapeGenerator = shapeGenerator; this.mesh = mesh; this.resolution = resolution; this.localUp = localUp; this.axisA = new Vector3(localUp.y, localUp.z, localUp.x); this.axisB = Vector3.Cross(localUp, axisA); this.collider = collider; this.rg = rg; this.isTutorialWorld = isTutorialWorld; }
public Universe BuildUniverse() { Universe result = new Universe() { Name = "universe 1" }; List <SolarSystem> solarSystems = new List <SolarSystem>(); using (var db = new ASPNetOgameLikeTPContext()) { for (int i = 1; i < this.globalGameConfiguration.SolarSystemNb + 1; i++) { SolarSystem solarSystem = new SolarSystem(); for (int j = 1; j < this.globalGameConfiguration.PlanetsNb + 1; j++) { Planet planet = new Planet(); foreach (var item in this.globalPlanetConfiguration.BuildingsIds) { ResourceGenerator buildingTemp = ConfigurationsUtil.Instance.PlanetResourceGenerators(globalPlanetConfiguration).FirstOrDefault(x => x.Id == item); buildingTemp.Print = DEFAULT_DISPLAY_RESOURCE; buildingTemp.Id = null; planet.Buildings.Add(ClassUtil.Copy(buildingTemp)); } foreach (var item in this.globalPlanetConfiguration.ResourcesIds) { Resource resourceTemp = ConfigurationsUtil.Instance.PlanetResources(globalPlanetConfiguration).FirstOrDefault(x => x.Id == item); resourceTemp.LastUpdate = DateTime.Now; resourceTemp.LastQuantity = 0; resourceTemp.Print = DEFAULT_DISPLAY_RESOURCE; resourceTemp.Id = null; planet.Resources.Add(ClassUtil.Copy(resourceTemp)); } planet.CaseNb = MathUtil.DrawRandom(20 * j % 300, 30 * j % 300); planet.Name = $"Planet{j}"; planet.Print = DEFAULT_DISPLAY_RESOURCE; solarSystem.Planets.Add(planet); } solarSystem.Name = "système solaire " + i; solarSystems.Add(solarSystem); } } result.SolarSystems.AddRange(solarSystems); return(result); }
// GET: ResourceGenerators/Delete/5 public ActionResult Delete(long?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ResourceGenerator resourceGenerator = db.ResourceGenerators.Find(id); if (resourceGenerator == null) { return(HttpNotFound()); } return(View(resourceGenerator)); }
private bool CanSpawn(BuildingTypeScriptableObject buildingType, Vector3 pos, out string errMsg) { BoxCollider2D box = buildingType.prefab.GetComponent <BoxCollider2D>(); Collider2D[] colliders = Physics2D.OverlapBoxAll((Vector2)pos + box.offset, box.size, 0); if (colliders.Length != 0) { errMsg = "Area not clear"; return(false); } // Look to see if there are any other factories of this type too close colliders = Physics2D.OverlapCircleAll(pos, buildingType.minSeparation); foreach (Collider2D collider in colliders) { BuildingTypeRef buildingTypeRef = collider.GetComponent <BuildingTypeRef>(); if (buildingTypeRef != null) { if (buildingTypeRef.buildingType == buildingType) { errMsg = "Sorry, there's another factory too closeby"; return(false); } } } // Make sure there are at least some resources (else this factory would be useless) if (buildingType.hasResourceGeneratorData) { ResourceGeneratorData resourceGeneratorData = buildingType.resourceGeneratorData; int nearbyResources = ResourceGenerator.GetNearbyResources(resourceGeneratorData, pos); if (nearbyResources == 0) { errMsg = "No resources nearby"; return(false); } } // Make sure there is at least one other building nearby (no isolationists!) colliders = Physics2D.OverlapCircleAll(pos, maxSeparation); foreach (Collider2D collider in colliders) { BuildingTypeRef buildingTypeRef = collider.GetComponent <BuildingTypeRef>(); if (buildingTypeRef != null) { errMsg = ""; return(true); } } errMsg = "Sorry, that's way too far from another building"; return(false); }
public void MapValues_ValueShouldBeUpdated() { var resources = CreateResourceData(); var stream = new MemoryStream(); ResourceGenerator.CreateGenerator(resources).MapValues((val => "ABC123")).WriteToStream(stream); var sr = new StreamReader(stream); var s = sr.ReadToEnd(); Assert.NotEmpty(s); Assert.DoesNotContain("Value1", s); Assert.Contains("ABC123", s); }
public void WriteToStream_ShouldGenerateResourceFile() { var resources = CreateResourceData(); var stream = new MemoryStream(); ResourceGenerator.CreateGenerator(resources).WriteToStream(stream); var sr = new StreamReader(stream); var s = sr.ReadToEnd(); Assert.NotEmpty(s); Assert.Contains("KeyString1", s); Assert.Contains("MaxLength", s); }
public ShadowMap(GraphicsDevice graphicsDevice, Resolution resolution) : base(graphicsDevice, resolution) { _sceneRuntimeDescriptor.CameraProjViewBuffer = _factory.CreateBuffer(new BufferDescription(Camera.SizeInBytes, BufferUsage.UniformBuffer | BufferUsage.Dynamic)); _sceneRuntimeDescriptor.CameraResourceLayout = ResourceGenerator.GenerateResourceLayout( _factory, "projViewWorld", ResourceKind.UniformBuffer, ShaderStages.Vertex); _sceneRuntimeDescriptor.CameraResourceSet = ResourceGenerator.GenrateResourceSet( _factory, _sceneRuntimeDescriptor.CameraResourceLayout, new BindableResource[] { _sceneRuntimeDescriptor.CameraProjViewBuffer }); }
public override async Task <int> Main() { // TODO: Output changes var graph = new DefinitionGraph(); await graph.Apply(LoadDefinition()); graph.Save(); if (PathManager.IsResource()) { ResourceGenerator.Serialize(graph); } return(await Task.FromResult(0)); }
/* It is main and most important function for allowing rocket to go on a mission. * It checks almost all conditions (capacity is checking in different place) which has to * be fullfiled to go on mission. Money, Fuel Tank level and Materials level */ public bool CheckConditions(string planetName) { //Loads necessary objects Loader(); planetComponent = GameObject.Find(planetName).GetComponent <Planet>(); _economyComponent = _economyObject.GetComponent <Economy>(); _myTimer = _economyObject.GetComponent <MyTimer>(); _resourceGenerator = _economyObject.GetComponent <ResourceGenerator>(); //Check if player has enough money and the rocket is not on a mission already if (planetComponent.flightCost <= _economyComponent.getMoney() && _myTimer.timeStart == false) { //Check if distance is not too big - fuel tank level is enough if (_rocket.GetMaxDistance() >= planetComponent.distance) { //Check if the temperature on the planet is not too big or too small to land on it - materials have to be on enough level if (_rocket.GetMaximumTeperature() >= planetComponent.averageTemperature && _rocket.GetMinimumTemeperature() <= planetComponent.averageTemperature) { _resourceGenerator.AddResources(planetName); PlayerPrefs.SetString("PlanetName", planetName); _myTimer.SetCurrentPlanetName(planetName); _myTimer.timeStart = true; return(true); } else { PanelTurnOn(); _textError.text = "Temperature on the planet is too dangerous for your rocket. You need to develop new materials"; return(false); } } else { PanelTurnOn(); _textError.text = "Planet is too far. You have to upgrade your Engine!"; return(false); } } else { PanelTurnOn(); _textError.text = "You have not enough money! You can sell some resources in shop."; return(false); } }
// Start is called before the first frame update private void Start() { _player = GameObject.FindWithTag("Player"); _resourceCollector = GameObject.FindWithTag("ResourceCollector").GetComponent <ResourceCollector>(); _resourceGenerator = GameObject.FindWithTag("ResourceGenerator").GetComponent <ResourceGenerator>(); // Spawn random number of essence pieces System.Random rnd = new System.Random(); _essenceNumber = rnd.Next(8, 14); SpawnEssencePieces(_essenceNumber); // Set initial values for hover effect _timeCounter = Random.Range(0, 200); _basePosition = transform.position; _movingTowardsPlayer = false; _moveTowardsPlayerSpeed = DefaultMoveTowardsPlayerSpeed; }
public void SpawnGenerator(Vector3 location, Vector3 normal, Color resourceColor) { //Any returns a bool if (possibleResources.Any(wr => wr.resourceColorPixel == resourceColor)) { ResourceType type = possibleResources.Find(wr => wr.resourceColorPixel == resourceColor).Resource; GameObject generator = Instantiate(generatorPrefab, location, Quaternion.identity); generator.transform.up = normal; ResourceGenerator res = generator.GetComponent <ResourceGenerator>(); res.SetMaterialColor(resourceColor); registeredGenerators[type]++; } }
public OmniShadowMap(GraphicsDevice graphicsDevice, Resolution resolution) : base(graphicsDevice, resolution) { _sceneRuntimeDescriptor.CameraProjViewBuffer = _factory.CreateBuffer(new BufferDescription(Camera.SizeInBytes, BufferUsage.UniformBuffer | BufferUsage.Dynamic)); _sceneRuntimeDescriptor.CameraResourceLayout = ResourceGenerator.GenerateResourceLayout( _factory, "projViewWorld", ResourceKind.UniformBuffer, ShaderStages.Vertex); _sceneRuntimeDescriptor.CameraResourceSet = ResourceGenerator.GenrateResourceSet( _factory, _sceneRuntimeDescriptor.CameraResourceLayout, new BindableResource[] { _sceneRuntimeDescriptor.CameraProjViewBuffer }); _sceneRuntimeDescriptor.OmniLightProjViewBuffer = _factory.CreateBuffer(new BufferDescription(6*Core.Numerics.Utils.SinglePrecision4x4InBytes, BufferUsage.UniformBuffer | BufferUsage.Dynamic)); _sceneRuntimeDescriptor.OmniLightProvViewResourceLayout = ResourceGenerator.GenerateResourceLayout( _factory, "shadowMatrices", ResourceKind.UniformBuffer, ShaderStages.Geometry); _sceneRuntimeDescriptor.OmniLightProjViewResourceSet = ResourceGenerator.GenrateResourceSet( _factory, _sceneRuntimeDescriptor.OmniLightProvViewResourceLayout, new BindableResource[] { _sceneRuntimeDescriptor.OmniLightProjViewBuffer }); _sceneRuntimeDescriptor.CameraInfoBuffer = _factory.CreateBuffer(new BufferDescription(32, BufferUsage.UniformBuffer)); _sceneRuntimeDescriptor.CameraInfoResourceLayout = ResourceGenerator.GenerateResourceLayout( _factory, "cameraInfo", ResourceKind.UniformBuffer, ShaderStages.Fragment); _sceneRuntimeDescriptor.CameraInfoResourceSet = ResourceGenerator.GenrateResourceSet( _factory, _sceneRuntimeDescriptor.CameraInfoResourceLayout, new BindableResource[] { _sceneRuntimeDescriptor.CameraInfoBuffer }); ShadowMatrices = _sceneRuntimeDescriptor.OmniLightProjViewResourceSet; CameraInfo = _sceneRuntimeDescriptor.CameraInfoResourceSet; }