public dtoTileItemDisplay(liteTileItem item, Int32 idUserLanguage, Int32 idDefaultLanguage) { NavigateUrl = item.NavigateUrl; ToolTip = item.GetTranslation(idUserLanguage, idDefaultLanguage); CssClass = item.CssClass; Type = item.Type; }
private Position AddResourcePatch(int size, int mapsize, Position center, TileItemType tileType) { var square = tileType == TileItemType.RESOURCE_COMMON_SOUL; var mazeness = 0.5; mazeness = (tileType == TileItemType.RESOURCE_COMMON_BODY) ? 1 : mazeness; mazeness = (tileType == TileItemType.RESOURCE_RARE_BODY) ? 10 : mazeness; mazeness = (tileType == TileItemType.RESOURCE_COMMON_SOUL) ? 10 : mazeness; mazeness = (tileType == TileItemType.RESOURCE_RARE_SOUL) ? 0.1 : mazeness; var patch = GenUtils.MazeGen(size, mazeness, square, 1, 1, 1, 1); Position furthestPos = center; foreach (Position pos in patch) { Position newpos = new Position(center.X + pos.X, center.Y + pos.Y); if (newpos.IsInMap(mapsize)) { tiles[newpos.X, newpos.Y].Item = TileItemInfo.GetClone(tileType); } if (newpos.Dist(center) > furthestPos.Dist(center)) { furthestPos = newpos; } } return(furthestPos); }
public FunctionInfo() { MainFunction = new NoFonction(); SecondaryFunction = new NoFonction(); SynergyFunction = new NoFonction(); SynergyTrigger = TileItemType.NONE; }
public static TileItem Get(TileItemType type) { if (!init) { initInfo(); init = true; } return(items[(int)type]); }
public void SelectForDelete(Sprite spriteToUse) { SelectImage.GetComponent <Image>().sprite = spriteToUse; Color col = Color.red; col.a = 0.2f; SelectImage.GetComponent <Image>().color = col; SelectedBuildItem = TileItemType.OBSTACLE; }
public void SelectForBuild(TileItemType type) { MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("TileConstr"); TileItem item = TileItemInfo.Get(type); SelectImage.GetComponent <Image>().sprite = MainController.TileItemSprites[(int)item.Fonction]; Color col = MainController.TileItemColors[(int)item.Synergy]; col.a = 0.2f; SelectImage.GetComponent <Image>().color = col; SelectedBuildItem = type; }
public void RequestForBuild(TileItemType item, int x, int y) { if (x >= 0 && x < TileMap.GetLength(0) && y >= 0 && y < TileMap.GetLength(1)) { Global.Instance.SendCommand(new BuildParam(new Coma.Common.Position(x, y), item)); TileView tile = TileMap[x, y]; if (tile.currentTile.Item != null || tile.currentTile.Item.ItemType == TileItemType.NONE) { //Add temp construct image } } }
public void FromMessage(String message) { string[] splitargs = message.Split(';'); Type = (TileType)int.Parse(splitargs[0]); Influence = int.Parse(splitargs[1]); Contructable = Utils.StringToBool(splitargs[2]); Radiance = Utils.StringToBool(splitargs[3]); string[] itemargs = splitargs[4].Split(','); TileItemType itemtype = (TileItemType)(int.Parse(itemargs[0])); Item = TileItemInfo.GetClone(itemtype); Item.FromMessage(splitargs[4]); }
public void SetItemOnTile(TileItem item) { itemOnTile = item; if (itemOnTile == null) { tileItemType = TileItemType.empty; } else if (itemOnTile is DroppedMoney) { tileItemType = TileItemType.money; } else if (itemOnTile is TreasureChest) { switch ((itemOnTile as TreasureChest).ChestType) { case TreasureChest.TreasureChestTypeEnum.small: tileItemType = TileItemType.smallChest; break; } } }
public dtoTileItemDisplay() { Type = TileItemType.UserDefinedUrl; }
// Update is called once per frame void Update() { if (Input.GetKeyDown(KeyCode.LeftAlt)) { MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("TileConstr"); } if (Input.GetKeyUp(KeyCode.LeftAlt) && SelectedBuildItem == TileItemType.NONE) { MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("TileConstr")); } if (Input.GetKeyDown(KeyCode.LeftControl)) { MainCamera.cullingMask |= 1 << LayerMask.NameToLayer("TileInflu"); } if (Input.GetKeyUp(KeyCode.LeftControl)) { MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("TileInflu")); } if (Input.GetKey(KeyCode.UpArrow) || Input.GetKey(KeyCode.Z)) { MainCamera.transform.position += new Vector3(0, 1) * Time.deltaTime * CameraSpeed; } if (Input.GetKey(KeyCode.DownArrow) || Input.GetKey(KeyCode.S)) { MainCamera.transform.position += new Vector3(0, -1) * Time.deltaTime * CameraSpeed; } if (Input.GetKey(KeyCode.LeftArrow) || Input.GetKey(KeyCode.Q)) { MainCamera.transform.position += new Vector3(-1, 0) * Time.deltaTime * CameraSpeed; } if (Input.GetKey(KeyCode.RightArrow) || Input.GetKey(KeyCode.D)) { MainCamera.transform.position += new Vector3(1, 0) * Time.deltaTime * CameraSpeed; } if (Input.mouseScrollDelta.y > 0 && MainCamera.orthographicSize > 4) { MainCamera.orthographicSize -= 1; CameraSpeed -= 1f; if (MainCamera.orthographicSize == 4 && !MainController.IsTileUIVisible) { MainController.EnableTileUI(); } } if (Input.mouseScrollDelta.y < 0 && MainCamera.orthographicSize < 25) { MainCamera.orthographicSize += 1; CameraSpeed += 1f; if (MainController.IsTileUIVisible) { MainController.DisableTileUI(); } } if (SelectedBuildItem != TileItemType.NONE) { Vector3 pos = Input.mousePosition; pos.z = 5; pos = Camera.main.ScreenToWorldPoint(pos); pos.x = Mathf.Max(0, Mathf.Min(MainController.TileMap.GetLength(0) - 1, Mathf.FloorToInt(pos.x + 0.5f))); pos.y = Mathf.Max(0, Mathf.Min(MainController.TileMap.GetLength(1) - 1, Mathf.FloorToInt(pos.y + 0.5f))); SelectImage.position = pos; } if ((Input.GetMouseButtonDown(0) || Input.GetMouseButtonDown(1) || Input.GetKeyDown(KeyCode.Escape)) && SelectedBuildItem != TileItemType.NONE) { //RequestForBuild if (Input.GetMouseButtonDown(0)) { if (SelectedBuildItem == TileItemType.OBSTACLE) { SelectedBuildItem = TileItemType.NONE; } MainController.RequestForBuild(SelectedBuildItem, (int)SelectImage.position.x, (int)SelectImage.position.y); } SelectedBuildItem = TileItemType.NONE; if (!Input.GetKey(KeyCode.LeftAlt)) { MainCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("TileConstr")); } SelectImage.GetComponent <Image>().sprite = null; SelectImage.GetComponent <Image>().color = Color.clear; } }
public static int CheckSynergyTrigger(WorldMap map, Position center, TileItemSynergyMode mode, TileItemType trigger) { var res = 0; var mapsize = map.GetTiles().GetLength(0); if (trigger != TileItemType.NONE) { if (mode == TileItemSynergyMode.ADJACENT) { Position postmp; postmp = new Position(center.X + 1, center.Y); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } postmp = new Position(center.X - 1, center.Y); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } postmp = new Position(center.X, center.Y + 1); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } postmp = new Position(center.X, center.Y - 1); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } postmp = new Position(center.X + 1, center.Y + 1); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } postmp = new Position(center.X - 1, center.Y - 1); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } postmp = new Position(center.X - 1, center.Y + 1); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } postmp = new Position(center.X + 1, center.Y - 1); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } } if (mode == TileItemSynergyMode.VERTICAL) { Position postmp; for (int j = 1; j <= 8; j++) { postmp = new Position(center.X, center.Y + j); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } } for (int j = 1; j <= 8; j++) { postmp = new Position(center.X, center.Y - j); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } } } if (mode == TileItemSynergyMode.HORIZONTAL) { Position postmp; for (int i = 1; i <= 8; i++) { postmp = new Position(center.X + i, center.Y); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } } for (int i = 1; i <= 8; i++) { postmp = new Position(center.X - i, center.Y); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } } } if (mode == TileItemSynergyMode.DIAGONAL) { Position postmp; for (int i = 1; i <= 3; i++) { postmp = new Position(center.X + i, center.Y + i); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } } for (int i = 1; i <= 3; i++) { postmp = new Position(center.X - i, center.Y - i); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } } for (int i = 1; i <= 3; i++) { postmp = new Position(center.X - i, center.Y + i); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } } for (int i = 1; i <= 3; i++) { postmp = new Position(center.X + i, center.Y - i); if (postmp.IsInMap(mapsize) && map.GetTiles()[postmp.X, postmp.Y].Item.ItemType == trigger) { res++; } } } } if (res > 4) { res = 4; } return(res); }
// public virtual long IdModulePage { get; set; } public liteTileItem() { Translations = new List <liteTileItemTranslation>(); Type = TileItemType.UserDefinedUrl; }
public BuildParam(Position pos, TileItemType id) : this() { this.Position = pos; this.Id = id; }