카드 효과 추가
This commit is contained in:
parent
a105013227
commit
8bb0f299c3
@ -3591,55 +3591,6 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 346596724}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &355668242
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 355668244}
|
||||
- component: {fileID: 355668243}
|
||||
m_Layer: 3
|
||||
m_Name: PostProcessingVolume
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &355668243
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 355668242}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 172515602e62fb746b5d573b38a5fe58, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_IsGlobal: 1
|
||||
priority: 0
|
||||
blendDistance: 0
|
||||
weight: 1
|
||||
sharedProfile: {fileID: 11400000, guid: da9f66a87cd612d4e847d191aa6df602, type: 2}
|
||||
--- !u!4 &355668244
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 355668242}
|
||||
serializedVersion: 2
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!1 &357166929
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -6383,6 +6334,63 @@ RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 5685570007726524012, guid: 5fcdc9afc13ca2e49bc954e4fd607a47, type: 3}
|
||||
m_PrefabInstance: {fileID: 567774568}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &569074834
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 0}
|
||||
m_Modifications:
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1492562680585263202, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6468678730395126332, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: PostProcessingVolume
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 29ff4b046e796f249b05a7e81fa48779, type: 3}
|
||||
--- !u!1 &571612559
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -6658,8 +6666,6 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 1e18fddab7a69284394b8b5bad8d1dbe, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
SwitchMapsOpened: 6
|
||||
SwitchMapsClosed: 1
|
||||
--- !u!1 &593921700
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -9788,17 +9794,6 @@ RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 4291285538023367731, guid: f9e46dadb5448ee4883f8b114e9c6488, type: 3}
|
||||
m_PrefabInstance: {fileID: 909457639}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!114 &909457641 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 267286335665872847, guid: f9e46dadb5448ee4883f8b114e9c6488, type: 3}
|
||||
m_PrefabInstance: {fileID: 909457639}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 9cbe519b68d07ad4285f091528d6a34d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &963357680
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -10672,7 +10667,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!4 &1045118482
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -10706,20 +10701,26 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 278ab2f13d3f1e24594035530325c0ac, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
_liquidPanel: {fileID: 0}
|
||||
_shaker: {fileID: 0}
|
||||
_renderTexture: {fileID: 2105041734}
|
||||
_liquidRenderer: {fileID: 379763496}
|
||||
_reachedCollider: {fileID: 400400199}
|
||||
_amountText: {fileID: 0}
|
||||
_completeCocktailImage: {fileID: 0}
|
||||
_completeText: {fileID: 0}
|
||||
_spawnTransform: {fileID: 1511911897}
|
||||
_spawnLocation: {fileID: 218784750}
|
||||
_pushDirection: {x: -5, y: -1, z: 0}
|
||||
_pushPower: 70
|
||||
_liquidObject: {fileID: -7612237390858616641, guid: 231c2f369e2946745a955eb49243702b, type: 3}
|
||||
_liquidColor: {r: 1, g: 0.8431373, b: 0, a: 1}
|
||||
_liquidsPerSecond: 80
|
||||
_maxLiquidCount: 400
|
||||
_colorLerpSpeed: 0.5
|
||||
_colorIntensity: 2
|
||||
_objectPoolCount: 10000
|
||||
_moveDuration: 0.5
|
||||
_currentBarrel: {fileID: 0}
|
||||
--- !u!1 &1049919588
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -10851,8 +10852,6 @@ MonoBehaviour:
|
||||
<TycoonUpgradeUi>k__BackingField: {fileID: 1496452083}
|
||||
<TycoonManagementUi>k__BackingField: {fileID: 102499729}
|
||||
<TycoonStageUi>k__BackingField: {fileID: 1733600343}
|
||||
<BrewingUi>k__BackingField: {fileID: 1909799358}
|
||||
<DrinkUi>k__BackingField: {fileID: 587277062}
|
||||
_fadeImage: {fileID: 2055805162}
|
||||
--- !u!114 &1049919594
|
||||
MonoBehaviour:
|
||||
@ -16947,17 +16946,6 @@ RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 4291285538023367731, guid: f9e46dadb5448ee4883f8b114e9c6488, type: 3}
|
||||
m_PrefabInstance: {fileID: 8086743652407108747}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!114 &1518298344 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 267286335665872847, guid: f9e46dadb5448ee4883f8b114e9c6488, type: 3}
|
||||
m_PrefabInstance: {fileID: 8086743652407108747}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 9cbe519b68d07ad4285f091528d6a34d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &1527652764
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -17970,17 +17958,6 @@ RectTransform:
|
||||
m_CorrespondingSourceObject: {fileID: 4291285538023367731, guid: f9e46dadb5448ee4883f8b114e9c6488, type: 3}
|
||||
m_PrefabInstance: {fileID: 1627308700}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!114 &1627308702 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 267286335665872847, guid: f9e46dadb5448ee4883f8b114e9c6488, type: 3}
|
||||
m_PrefabInstance: {fileID: 1627308700}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 9cbe519b68d07ad4285f091528d6a34d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1001 &1628404463
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -22625,35 +22602,6 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: e31b5881c81ad924b93ec7dcfe7baf19, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
SwitchMapsOpened: 2
|
||||
SwitchMapsClosed: 1
|
||||
_drinkRecipeSlotUiPrefab: {fileID: 282528693430034096, guid: 5d001eb1c848ebd468b622667d90cad8, type: 3}
|
||||
_drinkRecipeSpawnLocation: {fileID: 1858488035}
|
||||
_recipeName: {fileID: 713557315}
|
||||
_drinkImage: {fileID: 1835523529}
|
||||
_convertButton: {fileID: 1381895787}
|
||||
_brewingIngredientSlotUis:
|
||||
- {fileID: 1518298344}
|
||||
- {fileID: 909457641}
|
||||
- {fileID: 1627308702}
|
||||
_selectedDrinkData:
|
||||
<Idx>k__BackingField:
|
||||
<Name>k__BackingField:
|
||||
<Category>k__BackingField: 0
|
||||
<Amount>k__BackingField: 0
|
||||
<AlcoholVolume>k__BackingField: 0
|
||||
<CoolWarm>k__BackingField: 0
|
||||
<BitterSweet>k__BackingField: 0
|
||||
<Scent>k__BackingField: 0
|
||||
<IngredientIdx1>k__BackingField:
|
||||
<IngredientQuantity1>k__BackingField: 0
|
||||
<IngredientIdx2>k__BackingField:
|
||||
<IngredientQuantity2>k__BackingField: 0
|
||||
<IngredientIdx3>k__BackingField:
|
||||
<IngredientQuantity3>k__BackingField: 0
|
||||
<Sprite>k__BackingField: {fileID: 0}
|
||||
<Color>k__BackingField: {r: 0, g: 0, b: 0, a: 0}
|
||||
_currentBrewing: {fileID: 0}
|
||||
--- !u!1 &1918605129
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -24182,9 +24130,9 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 3dd7358ce993836479029d580437bb79, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
Card01: {fileID: 7279465393450390489, guid: cf200ba34deabdb41847ac49e53704be, type: 3}
|
||||
Card02: {fileID: 7279465393450390489, guid: cf200ba34deabdb41847ac49e53704be, type: 3}
|
||||
Card03: {fileID: 7279465393450390489, guid: cf200ba34deabdb41847ac49e53704be, type: 3}
|
||||
card01: {fileID: 7279465393450390489, guid: cf200ba34deabdb41847ac49e53704be, type: 3}
|
||||
card02: {fileID: 7279465393450390489, guid: cf200ba34deabdb41847ac49e53704be, type: 3}
|
||||
card03: {fileID: 7279465393450390489, guid: cf200ba34deabdb41847ac49e53704be, type: 3}
|
||||
--- !u!1 &2048187805
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -27356,7 +27304,7 @@ SceneRoots:
|
||||
- {fileID: 873223992}
|
||||
- {fileID: 1774013120}
|
||||
- {fileID: 1634548838}
|
||||
- {fileID: 355668244}
|
||||
- {fileID: 569074834}
|
||||
- {fileID: 1222632321}
|
||||
- {fileID: 1231728096}
|
||||
- {fileID: 1619849090}
|
||||
|
@ -24,11 +24,9 @@ public enum Acceleration
|
||||
//아직 정해지지 않은건 None표시
|
||||
}
|
||||
|
||||
public class TycoonCard : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler, IPointerClickHandler
|
||||
public class TycoonCard : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler, IPointerClickHandler ,IPointerMoveHandler
|
||||
{
|
||||
|
||||
|
||||
|
||||
[field: Title("카드 속성")]
|
||||
|
||||
private CardData _cardData_IDX;
|
||||
@ -49,6 +47,39 @@ public class TycoonCard : MonoBehaviour, IPointerEnterHandler, IPointerExitHandl
|
||||
[field: SerializeField, CLabel("회전 가속 종류")]
|
||||
public Acceleration AccelerationCard;
|
||||
|
||||
[field: Title("부가효과 : 카드 기울기")]
|
||||
[field: SerializeField, CLabel("최대 기울기(각도)")]
|
||||
private float maxRotationAngle = 15f;
|
||||
[field: SerializeField, CLabel("기울기 복원 속도")]
|
||||
private float returnSpeed = 1.0f;
|
||||
private bool isPointerInside; // 이미지 안에 마우스가 있는지 여부를 추적
|
||||
private Coroutine moveRotationCoroutine;
|
||||
private Coroutine endRotationCoroutine;
|
||||
|
||||
private Image image;
|
||||
|
||||
private RectTransform rectTransform;
|
||||
|
||||
void Start()
|
||||
{
|
||||
rectTransform = GetComponent<RectTransform>();
|
||||
_cardData_IDX = TycoonManager.Instance.GetCardDataByIdx(_cardData);
|
||||
|
||||
Transform nameTransform = transform.Find("Name");
|
||||
Transform infoTransform = transform.Find("Infomation");
|
||||
|
||||
TextMeshProUGUI nametextComponent = nameTransform.GetComponent<TextMeshProUGUI>();
|
||||
nametextComponent.text = _cardData_IDX.Img;
|
||||
|
||||
TextMeshProUGUI infotextComponent = infoTransform.GetComponent<TextMeshProUGUI>();
|
||||
infotextComponent.text = _cardData_IDX.ScriptText;
|
||||
|
||||
image = transform.Find("Image").GetComponent<Image>();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
[Button("회전")]
|
||||
public void Rotation_Start()
|
||||
@ -69,43 +100,120 @@ public class TycoonCard : MonoBehaviour, IPointerEnterHandler, IPointerExitHandl
|
||||
// Resources.Load()
|
||||
}
|
||||
|
||||
|
||||
void Start()
|
||||
{
|
||||
_cardData_IDX = TycoonManager.Instance.GetCardDataByIdx(_cardData);
|
||||
|
||||
Transform nameTransform = transform.Find("Name");
|
||||
Transform infoTransform = transform.Find("Infomation");
|
||||
|
||||
TextMeshProUGUI nametextComponent = nameTransform.GetComponent<TextMeshProUGUI>();
|
||||
nametextComponent.text = _cardData_IDX.Img;
|
||||
|
||||
TextMeshProUGUI infotextComponent = infoTransform.GetComponent<TextMeshProUGUI>();
|
||||
infotextComponent.text = _cardData_IDX.ScriptText;
|
||||
|
||||
}
|
||||
|
||||
// 마우스가 이미지 위에 올라갔을 때 호출
|
||||
public void OnPointerEnter(PointerEventData eventData)
|
||||
{
|
||||
if (endRotationCoroutine != null)
|
||||
{
|
||||
StopCoroutine(endRotationCoroutine);
|
||||
endRotationCoroutine = null;
|
||||
}
|
||||
|
||||
Debug.Log("OnMouse");
|
||||
|
||||
|
||||
isPointerInside = true;
|
||||
}
|
||||
|
||||
// 마우스가 이미지에서 벗어났을 때 호출
|
||||
public void OnPointerExit(PointerEventData eventData)
|
||||
{
|
||||
Debug.Log("OffMouse");
|
||||
//image.color = originalColor; // 원래 색상으로 복원
|
||||
image.color = new Color(1.0f,1.0f,1.0f,1.0f);
|
||||
|
||||
if (endRotationCoroutine != null)
|
||||
{
|
||||
StopCoroutine(endRotationCoroutine);
|
||||
endRotationCoroutine = null;
|
||||
}
|
||||
|
||||
if (moveRotationCoroutine != null)
|
||||
{
|
||||
StopCoroutine(moveRotationCoroutine);
|
||||
moveRotationCoroutine = null;
|
||||
}
|
||||
|
||||
endRotationCoroutine = StartCoroutine(ReturnToZeroRotation());
|
||||
|
||||
isPointerInside = false;
|
||||
}
|
||||
|
||||
// 마우스 클릭 시 호출
|
||||
public void OnPointerClick(PointerEventData eventData)
|
||||
{
|
||||
Debug.Log("ClickMouse");
|
||||
// image.color = clickColor; // 클릭 시 색상을 변경
|
||||
}
|
||||
|
||||
public void OnPointerMove(PointerEventData eventData)
|
||||
{
|
||||
|
||||
if (endRotationCoroutine != null)
|
||||
{
|
||||
StopCoroutine(endRotationCoroutine);
|
||||
endRotationCoroutine = null;
|
||||
}
|
||||
|
||||
if (moveRotationCoroutine != null)
|
||||
{
|
||||
StopCoroutine(moveRotationCoroutine);
|
||||
moveRotationCoroutine = null;
|
||||
}
|
||||
|
||||
moveRotationCoroutine = StartCoroutine(SmoothMoveToMouse(eventData));
|
||||
}
|
||||
|
||||
// 마우스의 움직임을 천천히 따라가도록 하는 코루틴
|
||||
private IEnumerator SmoothMoveToMouse(PointerEventData eventData)
|
||||
{
|
||||
while (isPointerInside)
|
||||
{
|
||||
Vector2 localPoint;
|
||||
|
||||
// 마우스 포인터의 화면 좌표(eventData.position)를 이미지의 로컬 좌표(localPoint)로 변환
|
||||
if (RectTransformUtility.ScreenPointToLocalPointInRectangle(rectTransform, eventData.position, eventData.pressEventCamera, out localPoint))
|
||||
{
|
||||
// 이미지 내에서의 좌표를 정규화된 값으로 변환 (0,0)이 이미지의 왼쪽 아래, (1,1)이 오른쪽 위
|
||||
Vector2 normalizedPoint = new Vector2(
|
||||
(localPoint.x - rectTransform.rect.xMin) / rectTransform.rect.width,
|
||||
(localPoint.y - rectTransform.rect.yMin) / rectTransform.rect.height
|
||||
);
|
||||
|
||||
// 좌표를 중심 기준으로 (-0.5, -0.5)에서 (0.5, 0.5)로 변환 (이미지 중앙이 0,0이 되도록)
|
||||
Vector2 centeredNormalizedPoint = normalizedPoint - new Vector2(0.5f, 0.5f);
|
||||
|
||||
// X와 Y축의 회전 각도를 마우스 위치에 따라 계산 (최대 회전 각도를 15도로 제한)
|
||||
float targetRotationX = Mathf.Clamp(centeredNormalizedPoint.y * maxRotationAngle * 2, -maxRotationAngle, maxRotationAngle);
|
||||
float targetRotationY = Mathf.Clamp(-centeredNormalizedPoint.x * maxRotationAngle * 2, -maxRotationAngle, maxRotationAngle);
|
||||
|
||||
// 현재 회전 값
|
||||
Vector3 currentRotation = rectTransform.localRotation.eulerAngles;
|
||||
|
||||
// 목표 회전 값으로 부드럽게 이동 (Slerp)
|
||||
float rotationX = Mathf.LerpAngle(currentRotation.x, targetRotationX, Time.deltaTime * 1.0f);
|
||||
float rotationY = Mathf.LerpAngle(currentRotation.y, targetRotationY, Time.deltaTime * 1.0f);
|
||||
|
||||
// 회전을 적용 (X축은 위아래 기울기, Y축은 좌우 기울기)
|
||||
rectTransform.localRotation = Quaternion.Euler(rotationX, rotationY, 0f);
|
||||
|
||||
// 천천히 이동하므로 매 프레임마다 기다림
|
||||
yield return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private IEnumerator ReturnToZeroRotation()
|
||||
{
|
||||
Quaternion startRotation = rectTransform.localRotation;
|
||||
Quaternion endRotation = Quaternion.identity;
|
||||
float timeElapsed = 0f;
|
||||
|
||||
while (timeElapsed < 1f)
|
||||
{
|
||||
// 점진적으로 원래 회전 상태로 돌아가기
|
||||
rectTransform.localRotation = Quaternion.Slerp(startRotation, endRotation, timeElapsed);
|
||||
timeElapsed += Time.deltaTime * returnSpeed;
|
||||
yield return null;
|
||||
}
|
||||
|
||||
// 최종적으로 완전한 초기 회전 상태로 설정
|
||||
rectTransform.localRotation = Quaternion.identity;
|
||||
endRotationCoroutine = null;
|
||||
}
|
||||
|
||||
private IEnumerator RotateOverTime()
|
||||
|
@ -7,19 +7,19 @@ namespace BlueWater.Uis
|
||||
{
|
||||
|
||||
[field: SerializeField, CLabel("카드 1")]
|
||||
private GameObject Card01;
|
||||
private GameObject card01;
|
||||
[field: SerializeField, CLabel("카드 2")]
|
||||
private GameObject Card02;
|
||||
private GameObject card02;
|
||||
[field: SerializeField, CLabel("카드 3")]
|
||||
private GameObject Card03;
|
||||
private GameObject card03;
|
||||
|
||||
private GameObject currentCard01;
|
||||
private GameObject currentCard02;
|
||||
private GameObject currentCard03;
|
||||
private GameObject _currentCard01;
|
||||
private GameObject _currentCard02;
|
||||
private GameObject _currentCard03;
|
||||
|
||||
private TycoonCard tycoonCard01Componet;
|
||||
private TycoonCard tycoonCard02Componet;
|
||||
private TycoonCard tycoonCard03Componet;
|
||||
private TycoonCard _tycoonCard01Componet;
|
||||
private TycoonCard _tycoonCard02Componet;
|
||||
private TycoonCard _tycoonCard03Componet;
|
||||
|
||||
[Button("카드 생성하기(레벨업)")]
|
||||
private void CreateCard()
|
||||
@ -27,39 +27,39 @@ namespace BlueWater.Uis
|
||||
if (!Application.isPlaying) return;
|
||||
|
||||
// 기존 카드가 있으면 삭제
|
||||
if (currentCard01 != null)
|
||||
if (_currentCard01 != null)
|
||||
{
|
||||
Destroy(currentCard01);
|
||||
Destroy(_currentCard01);
|
||||
}
|
||||
if (currentCard02 != null)
|
||||
if (_currentCard02 != null)
|
||||
{
|
||||
Destroy(currentCard02);
|
||||
Destroy(_currentCard02);
|
||||
}
|
||||
if (currentCard03 != null)
|
||||
if (_currentCard03 != null)
|
||||
{
|
||||
Destroy(currentCard03);
|
||||
Destroy(_currentCard03);
|
||||
}
|
||||
|
||||
currentCard01 = Instantiate(Card01, this.transform);
|
||||
currentCard01.name = "Card01";
|
||||
_currentCard01 = Instantiate(card01, this.transform);
|
||||
_currentCard01.name = "Card";
|
||||
|
||||
currentCard02 = Instantiate(Card02, this.transform);
|
||||
currentCard02.name = "Card02";
|
||||
_currentCard02 = Instantiate(card02, this.transform);
|
||||
_currentCard02.name = "Card02";
|
||||
|
||||
currentCard03 = Instantiate(Card03, this.transform);
|
||||
currentCard03.name = "Card03";
|
||||
_currentCard03 = Instantiate(card03, this.transform);
|
||||
_currentCard03.name = "Card03";
|
||||
|
||||
currentCard01.transform.localPosition = new Vector3(-550, 0, 0);
|
||||
currentCard02.transform.localPosition = new Vector3(0, 0, 0);
|
||||
currentCard03.transform.localPosition = new Vector3(550, 0, 0);
|
||||
_currentCard01.transform.localPosition = new Vector3(-550, 0, 0);
|
||||
_currentCard02.transform.localPosition = new Vector3(0, 0, 0);
|
||||
_currentCard03.transform.localPosition = new Vector3(550, 0, 0);
|
||||
|
||||
tycoonCard01Componet = currentCard01.GetComponent<TycoonCard>();
|
||||
tycoonCard02Componet = currentCard02.GetComponent<TycoonCard>();
|
||||
tycoonCard03Componet = currentCard03.GetComponent<TycoonCard>();
|
||||
_tycoonCard01Componet = _currentCard01.GetComponent<TycoonCard>();
|
||||
_tycoonCard02Componet = _currentCard02.GetComponent<TycoonCard>();
|
||||
_tycoonCard03Componet = _currentCard03.GetComponent<TycoonCard>();
|
||||
|
||||
tycoonCard01Componet.Rotation_Start();
|
||||
tycoonCard02Componet.Rotation_Start();
|
||||
tycoonCard03Componet.Rotation_Start();
|
||||
_tycoonCard01Componet.Rotation_Start();
|
||||
_tycoonCard02Componet.Rotation_Start();
|
||||
_tycoonCard03Componet.Rotation_Start();
|
||||
}
|
||||
|
||||
|
||||
|
BIN
Assets/03.Images/Ui/Tycoon/Roguelike/Card_Img_Team.png
Normal file
BIN
Assets/03.Images/Ui/Tycoon/Roguelike/Card_Img_Team.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 28 KiB |
140
Assets/03.Images/Ui/Tycoon/Roguelike/Card_Img_Team.png.meta
Normal file
140
Assets/03.Images/Ui/Tycoon/Roguelike/Card_Img_Team.png.meta
Normal file
@ -0,0 +1,140 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ea423b24550ff2640be14c058bbbbbcb
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 0
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 2
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
flipbookRows: 1
|
||||
flipbookColumns: 1
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
ignorePngGamma: 0
|
||||
applyGammaDecoding: 0
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 4
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites:
|
||||
- serializedVersion: 2
|
||||
name: Card_Img_Team_0
|
||||
rect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 640
|
||||
height: 1024
|
||||
alignment: 0
|
||||
pivot: {x: 0, y: 0}
|
||||
border: {x: 0, y: 0, z: 0, w: 0}
|
||||
customData:
|
||||
outline: []
|
||||
physicsShape: []
|
||||
tessellationDetail: 0
|
||||
bones: []
|
||||
spriteID: 3ec636704b7223e43a425f754a3c2173
|
||||
internalID: -1079852288
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 4de1ed0b6d487b2429addf58351d1b10
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable:
|
||||
Card_Img_Team_0: -1079852288
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@ -17,7 +17,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &9199400030788091584
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -27,15 +27,15 @@ RectTransform:
|
||||
m_GameObject: {fileID: 2943782663385093063}
|
||||
m_LocalRotation: {x: -0.08715578, y: 0, z: 0, w: 0.9961947}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 5, y: 8, z: 5}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 3945043186252027743}
|
||||
m_LocalEulerAnglesHint: {x: -10, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &2171710615668606180
|
||||
CanvasRenderer:
|
||||
@ -102,15 +102,15 @@ RectTransform:
|
||||
m_GameObject: {fileID: 3367794773895032679}
|
||||
m_LocalRotation: {x: -0.08715578, y: 0, z: 0, w: 0.9961947}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 5, y: 8, z: 5}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 3945043186252027743}
|
||||
m_LocalEulerAnglesHint: {x: -10, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &4999947251592817492
|
||||
CanvasRenderer:
|
||||
@ -140,7 +140,7 @@ MonoBehaviour:
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 0}
|
||||
m_Sprite: {fileID: -1079852288, guid: ea423b24550ff2640be14c058bbbbbcb, type: 3}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
@ -177,15 +177,15 @@ RectTransform:
|
||||
m_GameObject: {fileID: 4954372994133229964}
|
||||
m_LocalRotation: {x: -0.08715578, y: 0, z: 0, w: 0.9961947}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 5, y: 8, z: 5}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_LocalScale: {x: 1, y: 1.6, z: 1}
|
||||
m_ConstrainProportionsScale: 1
|
||||
m_Children: []
|
||||
m_Father: {fileID: 3945043186252027743}
|
||||
m_LocalEulerAnglesHint: {x: -10, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: -409.6772}
|
||||
m_SizeDelta: {x: 200, y: 50}
|
||||
m_AnchorMin: {x: 0.5, y: 0}
|
||||
m_AnchorMax: {x: 0.5, y: 0}
|
||||
m_AnchoredPosition: {x: -0, y: 104}
|
||||
m_SizeDelta: {x: 500, y: 120}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &5379141909738381352
|
||||
CanvasRenderer:
|
||||
@ -242,8 +242,8 @@ MonoBehaviour:
|
||||
m_faceColor:
|
||||
serializedVersion: 2
|
||||
rgba: 4294967295
|
||||
m_fontSize: 7
|
||||
m_fontSizeBase: 7
|
||||
m_fontSize: 30
|
||||
m_fontSizeBase: 30
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
@ -313,15 +313,15 @@ RectTransform:
|
||||
m_GameObject: {fileID: 6408727219447932146}
|
||||
m_LocalRotation: {x: -0.08715578, y: 0, z: 0, w: 0.9961947}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 5, y: 8, z: 5}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 3945043186252027743}
|
||||
m_LocalEulerAnglesHint: {x: -10, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 100, y: 100}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &4380907822811519659
|
||||
CanvasRenderer:
|
||||
@ -392,15 +392,15 @@ RectTransform:
|
||||
m_Children:
|
||||
- {fileID: 6407304977742262138}
|
||||
- {fileID: 7519490804232866819}
|
||||
- {fileID: 761962999104109761}
|
||||
- {fileID: 4289739070687939296}
|
||||
- {fileID: 761962999104109761}
|
||||
- {fileID: 9199400030788091584}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: -180, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 550, y: 0}
|
||||
m_SizeDelta: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 500, y: 800}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &519938834043385977
|
||||
MonoBehaviour:
|
||||
@ -419,6 +419,8 @@ MonoBehaviour:
|
||||
CardText:
|
||||
RotationDurationCard: 3
|
||||
AccelerationCard: 2
|
||||
maxRotationAngle: 15
|
||||
returnSpeed: 3
|
||||
--- !u!1 &8388805008705484080
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -446,15 +448,15 @@ RectTransform:
|
||||
m_GameObject: {fileID: 8388805008705484080}
|
||||
m_LocalRotation: {x: -0.08715578, y: 0, z: 0, w: 0.9961947}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 5, y: 8, z: 5}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 3945043186252027743}
|
||||
m_LocalEulerAnglesHint: {x: -10, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||
m_AnchoredPosition: {x: 0, y: 174.11392}
|
||||
m_SizeDelta: {x: 200, y: 50}
|
||||
m_AnchorMin: {x: 0.5, y: 1}
|
||||
m_AnchorMax: {x: 0.5, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: -87}
|
||||
m_SizeDelta: {x: 500, y: 100}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &4833202526536421552
|
||||
CanvasRenderer:
|
||||
@ -511,8 +513,8 @@ MonoBehaviour:
|
||||
m_faceColor:
|
||||
serializedVersion: 2
|
||||
rgba: 4294967295
|
||||
m_fontSize: 7
|
||||
m_fontSizeBase: 7
|
||||
m_fontSize: 30
|
||||
m_fontSizeBase: 30
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
|
Loading…
Reference in New Issue
Block a user