ºÇ½ª¹¹¿·¡§
orika_ex_miyako 2023ǯ07·î18Æü(²Ð) 13:08:47ÍúÎò
¡¡£³²ó¤Î¼ê½ç¤Ëʬ¤±¤ÆÀ©ºî¤·¤Þ¤¹¡£
¡¡´°À®Æ°²è¤Ç¤¹¡£
¡ã¥Ü¥à¤ÎÀ¸À®¡ä
ư²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¡ã¥Ü¥àȯư¡ä
ư²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¡¡¥Ü¥à¤ÎÈϰϤÏÊÑ¿ô¤ÇÀßÄê¤Ç¤¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤Þ¤¹¡£
¡¡Î㤨¤ÐÃͤòÊѹ¹¤¹¤ì¤Ð¡¢¤¹¤Ù¤Æ¤Î´³»Ù¤òÇ˲õ¤¹¤ë¤È¤¤¤¦¥Ü¥à¤âºî¤ì¤Þ¤¹¤·¡¢
Ê£¿ô¤Î¼ïÎà¤Î¥Ü¥à¤òºî¤ê¡¢¤½¤ì¤¾¤ì¤Î¸ú²ÌÈϰϤòÊѤ¨¤ë¤È¤¤¤¦¤³¤È¤â¤Ç¤¤Þ¤¹¡£
¡ã¤¹¤Ù¤Æ¤Î´³»Ù¤òºï½ü¡ä
ư²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¡ã¿·¤·¤¯³Ø½¬¤¹¤ëÆâÍÆ¡ä
¡¡¡¦½èÍý¤Î¥á¥½¥Ã¥É²½
¡¡¥Ü¥àµ¡Ç½¤ÎÀ©ºî¤Ë¸þ¤±¤Æ¡¢£²²ó¤Î¼ê½ç¤Ëʬ¤±¤Æ GameManager ¥¹¥¯¥ê¥×¥È¤Î½¤Àµ¤ò¹Ô¤¤¤Þ¤¹¡£
¡¡º£²ó¤Î¼ê½ç¤Ç¤Ï´û¸¤Î½èÍý¤ò¥á¥½¥Ã¥É²½¤·¡¢»È¤¤¤Þ¤ï¤»¤ë¤è¤¦¤Ë½àÈ÷¤·¤Þ¤¹¡£
¡¡²¼µ¤Ï¡¢OnEndDrag ¥á¥½¥Ã¥ÉÆâ¤Ë¤¢¤ë¡¢´³»Ù¤òºï½ü¤·¤Æ¤¤¤ë½èÍý¤Ç¤¹¡£
¡¡¡¡/// <summary>
/// ´³»Ù¤Î¥É¥é¥Ã¥°¤ò¤ä¤á¤¿¡Ê»Ø¤ò²èÌ̤«¤éÎ¥¤·¤¿¡ËºÝ¤Î½èÍý
/// </summary>
private void OnEndDrag() {
// ¤Ä¤Ê¤¬¤Ã¤Æ¤¤¤ë´³»Ù¤¬3°Ê¾å¤¢¤Ã¤¿¤é
if (eraseEtoList.Count >= 3) {
////¡¡¤³¤³¤«¤é¡¡////
for (int i = 0; i < eraseEtoList.Count; i++) {
// ´³»Ù¥ê¥¹¥È¤«¤é¼è¤ê½ü¤¯
etoList.Remove(eraseEtoList[i]);
// ¥¨¥Õ¥§¥¯¥ÈÀ¸À®
GameObject effect = Instantiate(eraseEffectPrefab, eraseEtoList[i].gameObject.transform);
effect.transform.SetParent(etoSetTran);
// ´³»Ù¤òºï½ü
Destroy(eraseEtoList[i].gameObject);
SoundManager.instance.PlaySE(SoundManager.SE_Type.Erase);
}
// ¥¹¥³¥¢¤È¾Ã¤·¤¿´³»Ù¤Î¿ô¤Î²Ã»»
AddScores(currentEtoType, eraseEtoList.Count);
//// ¥¹¥¥ë¥Ý¥¤¥ó¥È²Ã»»
uiManager.AddSkillPoint(eraseEtoList.Count);
// TODO £´¤Ä°Ê¾å¾Ã¤¨¤Æ¤¤¤¿¤é¡¢¥Ü¡¼¥Ê¥¹
// ¾Ã¤·¤¿´³»Ù¤Î¿ô¤À¤±¿·¤·¤¤´³»Ù¤ò¥é¥ó¥À¥à¤ËÀ¸À®
StartCoroutine(CreateEtos(eraseEtoList.Count));
eraseEtoList.Clear();
////¡¡¤³¤³¤Þ¤Ç¡¡////
} else {
for (int i = 0; i < eraseEtoList.Count; i++) {
// Áª¤ó¤À¿ô¤«2¸Ä°Ê²¼¤Î¾ì¹ç¡¡³Æ´³»Ù¤Îbool¤ò²ò½ü¤¹¤ë
eraseEtoList[i].isSelected = false;¡¡
ChangeEtoAlpha(eraseEtoList[i], 1.0f);
}
}
firstSelectEto = null;
lastSelectEto = null;
currentEtoType = null;
}
¡¡´³»Ù¤òºï½ü¤¹¤ë½èÍý¤Ï OnEndDrag ¥á¥½¥Ã¥ÉÆâ¤Ë¤¢¤ë¤¿¤á¡¢´³»Ù¤òºï½ü¤¹¤ë¤¿¤á¤Ë¤Ï¡¢ OnEndDrag ¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¤Æºï½ü¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¤³¤ì¤¬¸½ºß¤Î½èÍý¤Ç¤¹¡£¥É¥é¥Ã¥°¤ÎÍ̵¤Ë¤«¤«¤ï¤é¤º OnEndDrag ¥á¥½¥Ã¥É¤ò·Ðͳ¤·¤Ê¤¤¤È¡¢´³»Ù¤¬ºï½ü¤Ç¤¤Ê¤¤¾õÂ֤Ǥ¹¡£
¡¡º£²óÀ©ºî¤¹¤ë¥Ü¥à¤Î½èÍý¤Ï¡¢¥Ü¥à¤ò¥¿¥Ã¥×¤¹¤ë¤³¤È¤Ç¼þ°Ï¤Î´³»Ù¤òºï½ü¤¹¤ë¡¢¤È¤¤¤¦µ¡Ç½¤Ç¤¢¤ë¤¿¤á¡¢´³»Ù¤ò¤Ê¤¾¤Ã¤Æ¤Ä¤Ê¤²¤ëɬÍפ¬¤¢¤ê¤Þ¤»¤ó¡£
¤Ä¤Þ¤ê¡¢´³»Ù¤òºï½ü¤·¤¿¤¤¤Î¤Ç¤¹¤¬¡¢OnEndDrag ¥á¥½¥Ã¥É¤½¤Î¤â¤Î¤Ç¤Ï¤Ê¤¯¡¢¤½¤ÎÃæ¤Ë¤¢¤ë´³»Ù¤òºï½ü¤¹¤ëÉôʬ¤Î¤ß¤òɬÍפȤ·¤Æ¤ë¤¿¤á¡¢ºï½ü¤¹¤ë¤Þ¤Ç¤Î²áÄø¤¬º£¤Þ¤Ç¤È¤Ï°Û¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¡¡
¡¡¤Ç¤¹¤¬¡¢¥¿¥Ã¥×¸å¤Î¥Ü¥à¤Î½èÍý¼«ÂΤϴ³»Ù¤Îºï½ü¤Ç¤¹¡£
ºï½ü¤Î½èÍý¼«ÂΤϡ¢¤¹¤Ç¤Ë OnEndDrag ¥á¥½¥Ã¥ÉÆâ¤Ë¤¢¤ëµ¡Ç½¤Î°ìÉô¤Ç¤¹¡£¤³¤ì¤òÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤¤ì¤Ð¡¢¿·¤·¤¯Æ±¤¸µ¡Ç½¤ò»ý¤Ä½èÍý¤òºî¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
¤Þ¤¿¡¢Æ±¤¸½èÍý¤ò²¿¤«½ê¤Ë¤â¤½¤ÎÅÔÅÙºîÀ®¤¹¤ë¤Î¤ÏÌÞÂΤʤ¤¤Ç¤¹¡£
¡¡¤³¤¦¤¤¤Ã¤¿¥±¡¼¥¹¤Ë¤ª¤¤¤Æ¤Ï¡¢»È¤¤¤¿¤¤½èÍý¤ò¥Ö¥í¥Ã¥¯Ã±°Ì¤Ç¼è¤ê½Ð¤·¡¢¥á¥½¥Ã¥É²½¤·¤Þ¤·¤ç¤¦¡£
¥á¥½¥Ã¥É²½¤·¤Æ¤ª¤±¤Ð¡¢¥á¥½¥Ã¥É¤Î¼Â¹ÔÌ¿Îá¤ò£±¹Ô½ñ¤¯¤À¤±¤Ç¡¢½èÍý¤ò¹Ô¤Ã¤Æ¤¯¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡
¡¡Àè¤Û¤É¤Î´³»Ù¤Îºï½üÉôʬ¤ò¥á¥½¥Ã¥É²½¤¹¤ë¤È¡¢²¼µ¤Î¤è¤¦¤ËÃÖ¤´¹¤¨¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡£
¡¡¤Þ¤º¤Ï¡¢´û¸¤ÎÉôʬ¤ò¥³¥á¥ó¥È¥¢¥¦¥È¤·¤Þ¤·¤ç¤¦¡£
¤½¤ÎÂå¤ï¤ê¤Ë¡¢¥á¥½¥Ã¥É¤Î¸Æ¤Ó½Ð¤·Ì¿Îá¤ò£±¹Ô½ñ¤¤Þ¤¹¡£
¡¡¡¡/// <summary>
/// ´³»Ù¤Î¥É¥é¥Ã¥°¤ò¤ä¤á¤¿¡Ê»Ø¤ò²èÌ̤«¤éÎ¥¤·¤¿¡ËºÝ¤Î½èÍý
/// </summary>
¡¡¡¡private void OnEndDrag() {
// ¤Ä¤Ê¤¬¤Ã¤Æ¤¤¤ë´³»Ù¤¬3°Ê¾å¤¢¤Ã¤¿¤é
if (eraseEtoList.Count >= 3) {
// ÁªÂò¤µ¤ì¤Æ¤¤¤ë´³»Ù¤ò¾Ã¤¹
EraseEtos();¡¡¡¡//¡¡¢«¡¡¿·¤·¤¯ºî¤ë¥á¥½¥Ã¥É¤Î¼Â¹ÔÌ¿Îá
// ¥á¥½¥Ã¥É²½¤¹¤ëÉôʬ¤ò¥³¥á¥ó¥È¥¢¥¦¥È
// for (int i = 0; i < eraseEtoList.Count; i++) {
// // ´³»Ù¥ê¥¹¥È¤«¤é¼è¤ê½ü¤¯
// etoList.Remove(eraseEtoList[i]);
//
// // ¥¨¥Õ¥§¥¯¥ÈÀ¸À®
// GameObject effect = Instantiate(eraseEffectPrefab, eraseEtoList[i].gameObject.transform);
// effect.transform.SetParent(etoSetTran);
//
// // ´³»Ù¤òºï½ü
// Destroy(eraseEtoList[i].gameObject);
//
// SoundManager.instance.PlaySE(SoundManager.SE_Type.Erase);
// }
//
// // ¥¹¥³¥¢¤È¾Ã¤·¤¿´³»Ù¤Î¿ô¤Î²Ã»»
// AddScores(currentEtoType, eraseEtoList.Count);
//
// //// ¥¹¥¥ë¥Ý¥¤¥ó¥È²Ã»»
// uiManager.AddSkillPoint(eraseEtoList.Count);
//
// // TODO £´¤Ä°Ê¾å¾Ã¤¨¤Æ¤¤¤¿¤é¡¢¥Ü¡¼¥Ê¥¹
//
// // ¾Ã¤·¤¿´³»Ù¤Î¿ô¤À¤±¿·¤·¤¤´³»Ù¤ò¥é¥ó¥À¥à¤ËÀ¸À®
// StartCoroutine(CreateEtos(eraseEtoList.Count));
// eraseEtoList.Clear();
// ¤³¤³¤Þ¤Ç
} else {
for (int i = 0; i < eraseEtoList.Count; i++) {
// Áª¤ó¤À¿ô¤«2¸Ä°Ê²¼¤Î¾ì¹ç¡¡³Æ´³»Ù¤Îbool¤ò²ò½ü¤¹¤ë
eraseEtoList[i].isSelected = false;¡¡
ChangeEtoAlpha(eraseEtoList[i], 1.0f);
}
}
firstSelectEto = null;
lastSelectEto = null;
currentEtoType = null;
}
¡¡¤½¤·¤Æ¡¢²¼µ¤Î¿·¤·¤¤ EraseEtos ¥á¥½¥Ã¥É¤òÄêµÁ¤·¡¢¤½¤Á¤é¤Ë OnEndDrag ¥á¥½¥Ã¥ÉÆâ¤Ë¤¢¤Ã¤¿¡¢´³»Ù¤Îºï½ü¤Î½èÍý¤ò°Üư¤µ¤»¤Þ¤¹¡£
¥á¥½¥Ã¥É¤òÄêµÁ¤¹¤ëÉôʬ¤Ï¤É¤³¤Ç¤â¹½¤¤¤Þ¤»¤ó¤¬¡¢OnEndDrag ¥á¥½¥Ã¥É¤Î²¼¤ËÄɲ乤ë¤È¤Ä¤Ê¤¬¤ê¤¬¸«¤¨¤ä¤¹¤¤¤Ç¤·¤ç¤¦¡£
/// <summary>
/// ÁªÂò¤µ¤ì¤Æ¤¤¤ë´³»Ù¤ò¾Ã¤¹
/// </summary>
/// <param name="eraseCount"></param>
private void EraseEtos() {
// ÁªÂò¤µ¤ì¤Æ¤¤¤ë´³»Ù¤ò¾Ã¤¹
for (int i = 0; i < eraseEtoList.Count; i++) {
// ´³»Ù¥ê¥¹¥È¤«¤é¼è¤ê½ü¤¯
etoList.Remove(eraseEtoList[i]);
// ¥¨¥Õ¥§¥¯¥ÈÀ¸À®
GameObject effect = Instantiate(eraseEffectPrefab, eraseEtoList[i].gameObject.transform);
effect.transform.SetParent(etoSetTran);
// ´³»Ù¤òºï½ü
Destroy(eraseEtoList[i].gameObject);
SoundManager.instance.PlaySE(SoundManager.SE_Type.Erase);
}
// ¥¹¥³¥¢¤È¾Ã¤·¤¿´³»Ù¤Î¿ô¤Î²Ã»»
AddScores(currentEtoType, eraseEtoList.Count);
//// ¥¹¥¥ë¥Ý¥¤¥ó¥È²Ã»»
uiManager.AddSkillPoint(eraseEtoList.Count);
// TODO £´¤Ä°Ê¾å¾Ã¤¨¤Æ¤¤¤¿¤é¡¢¥Ü¡¼¥Ê¥¹
// ¾Ã¤·¤¿´³»Ù¤Î¿ô¤À¤±¿·¤·¤¤´³»Ù¤ò¥é¥ó¥À¥à¤ËÀ¸À®
StartCoroutine(CreateEtos(eraseEtoList.Count));
eraseEtoList.Clear();
}
¡¡°ú¿ô¤Ê¤É¤â¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢Ã±½ã¤Ë¥á¥½¥Ã¥É¤ò¿·¤·¤¯£±¤ÄºîÀ®¤·¡¢OnEndDrag ¥á¥½¥Ã¥É¤ÎÃæ¿È¤ò°Üư¤µ¤»¤Æ¤¤¤Þ¤¹¡£
¡¡¤³¤Î¤è¤¦¤Ë½èÍý¤ò¥á¥½¥Ã¥É²½¤¹¤ë¤³¤È¤Ç¡¢¼Â¹ÔÌ¿Îá¤ò½ñ¤±¤Ð¡¢´³»Ù¤Îºï½ü¤ÎÌ¿Îá¤ò¤ª¤³¤Ê¤Ã¤Æ¤¯¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
¡¡¼¡²ó°Ê¹ß¤Î¼ê½ç¤ÎÀ߷פÈÃʼè¤ê¤Ç¤¹¡£
º£¸å¤É¤¦¤¤¤Ã¤¿¤³¤È¤òͽÄꤷ¤Æ¤¤¤ë¤Î¤«¡¢Á´ÂÎÁü¤ò¥¤¥á¡¼¥¸¤·¤Æ¤ª¤¯¤³¤È¤¬ÂçÀڤǤ¹¡£
¡¡¤Þ¤º¡¢¥Ü¥à¤Ë¤Ä¤¤¤Æ¤Ï¡¢»öÁ°¤Ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¡¢Bomb.cs ¤òºîÀ®¤·¤Æ¥¢¥¿¥Ã¥Á¤·¤¿¾å¤Ç¥×¥ì¥Ï¥Ö¤È¤·¤ÆÍѰդ·¤Æ¤ª¤¤Þ¤¹¡£
¤³¤Î½àÈ÷¤Ï¼¡¤ÎȯŸ£±£µ¤Ë¤Æ¹Ô¤¤¤Þ¤¹¡£
¡¡¥Ü¥à¤ÎÀ¸À®¤Ë¤Ä¤¤¤Æ¤Ï¡¢º£²ó¤Ï GameManager ¤ËôÅö¤µ¤»¤Þ¤¹¡£¤³¤Á¤é¤ÏȯŸ£±£¶¤Î¼ê½ç¤Ë¤ª¤¤¤Æ¹Ô¤¤¤Þ¤¹¡£
¡¡¥Ü¥à¤òÀ¸À®¤¹¤ëÀÕ̳¤òÉ餦¤¿¤á¡¢¥×¥ì¥Ï¥Ö¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥Ü¥à¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÀ¸À®¤¹¤ëµ¡Ç½¤¬É¬Íפˤʤê¤Þ¤¹¡£
¥×¥ì¥Ï¥Ö¤òÀ¸À®¤¹¤ë¤¿¤á¤Î½èÍý¤òºî¤ë¤¿¤á¤Ë¤Ï¡¢¥×¥ì¥Ï¥Ö¤òÅÐÏ¿¤·¤Æ¤ª¤¯¤¿¤á¤ÎÊÑ¿ô¤¬É¬Íפˤʤê¤Þ¤¹¡£
¤³¤ì¤ò¿·¤·¤¯ GameManager ¤ËÍѰդ·¤Þ¤¹¡£
¡¡À¸À®°ÌÃ֤ˤĤ¤¤Æ¤Ï¡¢´³»Ù¤ÈƱ¤¸ EtoSetTran ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¤È¤·¤ÆÀ¸À®¤¹¤ì¤Ð¡¢´³»Ù¤ÈƱ¤¸¤è¤¦¤Ë¥²¡¼¥àÆâ¤ËÀ¸À®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢
¤³¤Á¤é¤Ï¿·¤·¤¤ÊÑ¿ô¤òÍѰդ·¤Ê¤¯¤Æ¤â´û¸¤ÎÊÑ¿ô¤òήÍѤǤ¤Þ¤¹¡£
¡¡¤½¤Î¤Û¤«¤Ë¤â¡¢¥Ü¥à¤òÀ¸À®¤¹¤ë¤¿¤á¤ËɬÍפʥÁ¥§¡¼¥ó¿ô¡¢¥Ü¥à¤Î¸ú²ÌÈϰϤˤĤ¤¤Æ¤â¿·¤·¤¤ÊÑ¿ô¤òÍѰդ·¤Þ¤¹¡£
¤³¤ì¤é¤Ï¸ÇÄêÃͤǤϤʤ¯¡¢ÊÑ¿ô¤È¤·¤ÆÍѰդ·¤Æ¤ª¤¡¢¤«¤Ä¡¢SerializeField °À¤òÉÕÍ¿¤·¤Æ¤ª¤¯¤³¤È¤Ç¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤éÄ´À°¤¬¹Ô¤¨¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡
¡¡ÆÃ¤Ë¥Á¥§¡¼¥ó¿ô¤Ë´Ø¤·¤Æ¤Ï¡¢¥Ü¥à¤òÀ¸À®¤¹¤ëÉôʬ¤Ë¤«¤«¤ï¤ê¤Þ¤¹¡£
¼ÂºÝ¤Ë¥²¡¼¥à¤ò¹Ô¤Ã¤Æ¥Ç¥Ð¥Ã¥°¤ò¤¹¤ëºÝ¤Ë¡¢¾å¼ê¤¯¥Á¥§¡¼¥ó¤¬¤Ä¤Ê¤¬¤é¤Ê¤¤¤È¡¢¤½¤â¤½¤â¥Ü¥à¤ÎÀ¸À®¤Î¥Á¥§¥Ã¥¯¤¬½ÐÍè¤Þ¤»¤ó¡£
¡¡¤½¤Î¤¿¤á¡¢¥Á¥§¡¼¥ó¤ËɬÍפÊÃͤòÊÑ¿ô¤È¤·¡¢¤½¤ì¤ò¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤éÊѹ¹¤¹¤ë¤³¤È¤Ç¡¢¥Ç¥Ð¥Ã¥°¤ÎºÝ¤Ë¤Ï¾¯¤Ê¤¤¥Á¥§¡¼¥ó¿ô¤Ç¤Î¥Ü¥à¤ÎÀ¸À®¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¤³¤Î¤è¤¦¤Ë¡¢¥Ç¥Ð¥Ã¥°¤ò¸úΨ¤è¤¯¹Ô¤¦¤¿¤á¤Ë¤â¡¢¥½¡¼¥¹¥³¡¼¥ÉÆâ¤Ë¤Ï¥ê¥Æ¥é¥ëɽµ(¸ÇÄêÃÍ¡¦¼Â¿ô)¤Ï¤Ê¤ë¤Ù¤¯ÍѤ¤¤º¡¢ÊÑ¿ô¤È¤·¤ÆÍѰդ·¡¢¤½¤ÎÃͤòÊѹ¹¤Ç¤¤ë¤³¤È¤¬Ë¾¤Þ¤·¤¤¤Ç¤¹¡£
¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£
¡¡¼¡¤Ï¡¡È¯Å¸£±£µ¡¡¤Ç¤¹¡£
- ¥«¥Æ¥´¥ê¡§
- ¿Ê³Ø/¥¹¥¯¡¼¥ë
- ¥×¥í¥°¥é¥ß¥ó¥°




¥³¥á¥ó¥È¤ò¤«¤¯