private string GetArrowFileName(DataConfig.CAMPAIGN_ARROW arrow) { string spineName = AppConfig.FOLDER_PROFAB_CAMPAIGN; switch (arrow) { case DataConfig.CAMPAIGN_ARROW.A_UPWARD: spineName += "ArrowIn"; break; case DataConfig.CAMPAIGN_ARROW.B_UPWARD_TURN_LEFT: spineName += "ArrowLeft"; break; case DataConfig.CAMPAIGN_ARROW.C_UPWARD_TURN_RIGHT: spineName += "ArrowRight"; break; case DataConfig.CAMPAIGN_ARROW.D_UPWARD_BIG: spineName += "ArrowIn2"; break; case DataConfig.CAMPAIGN_ARROW.E_UPWARD_TURN_LEFT_BIG: spineName += "ArrowLeft2"; break; case DataConfig.CAMPAIGN_ARROW.F_UPWARD_TURN_RIGHT_BIG: spineName += "ArrowRight2"; break; } return(spineName); }
public void ShowAttackArrow() { FreeArrow(); DataMission dataMission = _dataCampaign.missions [_selectTileIndex]; for (int i = 0; i < DataMission.ARROW_COUNT_MAX; ++i) { DataConfig.CAMPAIGN_ARROW arrow = dataMission.arrows[i]; float arrowRotation = dataMission.arrowsRotation[i]; // arrowRotation = 180; if (arrow != DataConfig.CAMPAIGN_ARROW.UNKNOWN) { string spineName = GetArrowFileName(arrow); GameObject spineArrow = ResourceHelper.Load(spineName); _skeletonAnimArrows.Add(spineArrow); Spine.Slot boundingSlot = GetBoundingSlot(_selectTileIndex); Vector3 center = SpineHelper.CalcTileArrowOffset(boundingSlot, _skeletonAnim.transform, arrowRotation); spineArrow.transform.position = center + new Vector3(0, 0, -1); spineArrow.transform.Rotate(0, 0, arrowRotation); } } }
private void ReadArrow(string s, out DataConfig.CAMPAIGN_ARROW arrow, out float rotation) { if (s == null) { arrow = DataConfig.CAMPAIGN_ARROW.UNKNOWN; rotation = 0; return; } s = s.ToLower(); char t = s [0]; switch (t) { case 'a': arrow = DataConfig.CAMPAIGN_ARROW.A_UPWARD; break; case 'b': arrow = DataConfig.CAMPAIGN_ARROW.B_UPWARD_TURN_LEFT; break; case 'c': arrow = DataConfig.CAMPAIGN_ARROW.C_UPWARD_TURN_RIGHT; break; case 'd': arrow = DataConfig.CAMPAIGN_ARROW.D_UPWARD_BIG; break; case 'e': arrow = DataConfig.CAMPAIGN_ARROW.E_UPWARD_TURN_LEFT_BIG; break; case 'f': arrow = DataConfig.CAMPAIGN_ARROW.F_UPWARD_TURN_RIGHT_BIG; break; default: arrow = DataConfig.CAMPAIGN_ARROW.UNKNOWN; break; } // if (arrow != DataConfig.CAMPAIGN_ARROW.UNKNOWN) { string r = s.Substring(1); rotation = -float.Parse(r); //CLOCK WISE } else { rotation = 0; } }