ºÇ½ª¹¹¿·¡§ orika_ex_miyako 2022ǯ04·î20Æü(¿å) 21:06:51ÍúÎò
¡¡¤³¤Î½èÍý¤Ë¤Ï¡ÖÆÃÄê¤Î¾ì½ê¤Ë¤¤¤Ã¤¿¡×¡Ö¤ª¶â¤ò¤¤¤¯¤é»ý¤Ã¤Æ¤¤¤ë¡×¤È¤¤¤¦·Á¤Ç¤Î¾ò·ïÀßÄê¤â²Äǽ¤Ç¤¹¡£
¤Þ¤¿Ê£¿ô¤Î¾ò·ï¤ÎÁȤ߹ç¤ï¤»¤â²Äǽ¤Ç¤¹¡£¡ÖÎÙ³¹¤Ë¤¤¤Ã¤¿¤³¤È¤¬¤¢¤ë¡×¡Ö¤ª¶â¤ò1000°Ê¾å»ý¤Ã¤Æ¤¤¤ë¡×¡ÖÌôÁð¤ò£³¸Ä°Ê¾å»ý¤Ã¤Æ¤¤¤ë¡×¤È¤¤¤Ã¤¿ÀßÄ꤬½ÐÍè¤Þ¤¹¡£
¡¡¾ò·ïãÀ®»þ¤Ë¤Ï¡Ö¾ò·ï¤È¤Ê¤Ã¤¿¤â¤Î¤ò¼º¤¦¡×¾ì¹ç¤È¡Ö¾ò·ï¤È¤Ê¤Ã¤¿¤â¤Î¤ò¤â¤Ã¤¿¤Þ¤Þ¤Ë¤¹¤ë¡×¾ì¹ç¤òÁªÂò¤·¤ÆÀßÄê¤Ç¤¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢ÂвÁ¤È¤·¤Æ¥¤¥Ù¥ó¥È¤òãÀ®¤¹¤ë¥¿¥¤¥×¤È¡¢ÂвÁ¤ÏÉÔÍפǼèÆÀ¤Î¤ß¤Ç¤¤ë¥¿¥¤¥×¤òÀßÄê¤Ç¤¤Þ¤¹¡£
¡¡
¡ã¼ÂÁõÆ°²è¡¡¾ò·ïãÀ®Á°¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¡ã¼ÂÁõÆ°²è¡¡¾ò·ïãÀ®»þ¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¡ã¼ÂÁõÆ°²è¡¡¥¯¥ê¥¢¸å¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯
¼ê½ç£³£±¡¡¡¼EventData ÍѤΥǡ¼¥¿¥Ù¡¼¥¹¤Î²þ½¤¡¼
£µ£´¡¥enum ¤Ë¤Æ EventProgressType ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë £µ£µ¡¥EventData ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¡¢¿·¤·¤¤ EventDataDetail ¥¯¥é¥¹¤òÄɲä·¡¢ÊÑ¿ô¤ò½¤Àµ¤¹¤ë £µ£¶¡¥EventDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥ÈÆâ¤Ë¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤òÅÐÏ¿¤¹¤ë
¡¡¿·¤·¤¤³Ø½¬ÆâÍƤϡ¢°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£
¡¡¡¦¥¤¥Ù¥ó¥È¤Î´ÉÍýÊýË¡Îã
¡¡²ñÏäΥ¤¥Ù¥ó¥È¤ò¡Ö¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¡×¤È¡Ö½¾Íè¤Î²ñÏÃ¥¤¥Ù¥ó¥È¡×¤Î£²¤Ä¤Ëʬ¤±¤ëÀ߷פˤ·¤Þ¤¹¡£
¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤È¤¤¤¦¤Î¤Ï¡¢£±¤Ä¤Î NPC ¤¬¥×¥ì¥¤¥ä¡¼¤Î¥¢¥¤¥Æ¥à¤Î½ê»ý¶ñ¹ç¤Ë¤è¤Ã¤Æ¡¢²ñÏäÎÆâÍƤ¬ÊѲ½¤¹¤ë¤â¤Î¤Ç¤¹¡£
½¾Íè¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤È¤¤¤¦¤Î¤Ï¡¢¤¤¤Þ¤Þ¤Ç¤Î²ñÏäȤª¤Ê¤¸¤Ç¤¹¡£¥×¥ì¥¤¥ä¡¼¤Î¾õÂ֤ˤè¤Ã¤Æ¤Ï²ñÏäÎÆâÍƤÏÊѲ½¤·¤Þ¤»¤ó¡£
¡¡º£²ó¤Ï¤³¤Î¡Ö¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¡×¤ò¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤ÆºîÀ®¤Ç¤¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¼¡¤Î¼ê½ç¤Ç¤Ï¡¢²ñÏÃ¥¤¥Ù¥ó¥È¤Î¿Ê¹Ô¾õ¶·¤Ë±þ¤¸¤Æ¡¢²ñÏÃ¥¤¥Ù¥ó¥È¤¬¼«Æ°Åª¤Ë¿Ê¹Ô¤·¤Æ¤¤¤¯¤è¤¦¤Ë½èÍý¤ò½¤Àµ¤·¤Þ¤¹¡£
¡¡¤Þ¤º¤ÏºÇ½é¤Ë¡¢¡Ö²ñÏÃ¥¤¥Ù¥ó¥È¤Î¿Ê¹Ô¾õ¶·¡×¤ò¥²¡¼¥àÆâ¤ËºîÀ®¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¤³¤Á¤é¤Ï enum ¤ÇºîÀ®¤·¤Æ¡¢³Æ²ñÏÃ¥¤¥Ù¥ó¥È¤Ë¾ðÊó¤òÍøÍѤ·¤Æ¤â¤é¤¨¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡enum ¤Î¤ß¤Î¥Õ¥¡¥¤¥ë¤òºîÀ®¤·¤Þ¤¹¡£MonoBehaviour ¥¯¥é¥¹¤Î·Ñ¾µ¤ÏÉÔÍפǤ¹¡£
¡¡³ÆÎóµó»Ò¤Ç¤¹¤¬¡¢¤³¤Á¤é¤ÎÎóµó»Ò¤¬²ñÏÃ¥¤¥Ù¥ó¥È¤Î¾õÂÖ¤òɽ¤¹¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡None ¤Ï½¾Íè¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤äõº÷¥¤¥Ù¥ó¥È¤ËÍøÍѤ¹¤ë¤â¤Î¤Ç¤¹¡£²ñÏäÎÆâÍƤ¬ÊѲ½¤·¤Þ¤»¤ó¡£
¡¡Need ¤È Permission ¤Ï¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥ÈÍѤËÍøÍѤ¹¤ë¤â¤Î¤Ç¤¹¡£
¤³¤Î¥¿¥¤¥×¤ò»ý¤Ä NPC ¤ËÏä·¤«¤±¤ë¤È¡¢²ñÏÃ¥¤¥Ù¥ó¥È¤¬¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤È¤Ê¤ê¡¢¥×¥ì¥¤¥ä¡¼¤Ë°ÍÍꤹ¤ë¾ðÊó¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡Need ¤Ï¡¢°ÍÍêãÀ®»þ¤Ë¥×¥ì¥¤¥ä¡¼¤Î¥¢¥¤¥Æ¥à¤¬¾ÃÌפ·¤Þ¤¹¡£(¤Ê¤¯¤Ê¤ë¤Î¤Ç¡¢¥¤¥ó¥Ù¥ó¥È¥ê¡¼¤«¤éºï½ü¤¬É¬Í×)
Permission ¤Ï°ÍÍêãÀ®»þ¤Ë¥×¥ì¥¤¥ä¡¼¤Î¥¢¥¤¥Æ¥à¤Ï¤Ê¤¯¤Ê¤ê¤Þ¤»¤ó¡£(Ä󼨤ΤߤʤΤǡ¢¥¤¥ó¥Ù¥ó¥È¥ê¡¼¤ÏÊѲ½¤Ê¤·)
¡¡NPC ¤ËÂФ·¤Æ¤¢¤²¤ë¤â¤Î¤Ê¤Î¤«¡¢¸«¤»¤ë¤À¤±¤Ç¤¤¤¤¤Î¤«¤ÇÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤Ï¤É¤Á¤é¤«£±¤Ä¤òÀßÄꤹ¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡Get ¤â¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤ËÍøÍѤ¹¤ë¤â¤Î¤Ç¤¹¡£
¥×¥ì¥¤¥ä¡¼¤¬ Need ¤« Permission ¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤Çµá¤á¤é¤ì¤Æ¤¤¤ë¥¢¥¤¥Æ¥à¤ò½ê»ý¤·¤Æ¤¤¤ë¾ì¹ç¤Ë NPC ¤ËÏä·¤«¤±¤¿ºÝ¤Ë¤Ï
¤³¤Á¤é¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤¬¿Ê¹Ô¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤³¤ÇÅÐÏ¿¤·¤Æ¤¢¤ë¥¢¥¤¥Æ¥à¤ò³ÍÆÀ¤Ç¤¤Þ¤¹¡£
¤Ê¤ª¡¢Ã£À®¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢ºÆÅÙ¡¢Need ¤« Permission ¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤ò¼Â¹Ô¤·¤Þ¤¹¡£
¡¡Cleared ¤â¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤ËÍøÍѤ¹¤ë¤â¤Î¤Ç¤¹¡£¤¹¤Ç¤Ë°ÍÍê¤ò´°Î»¤·¤Æ¤¤¤ë NPC ¤ËÏä·¤«¤±¤¿ºÝ¤Ë¼Â¹Ô¤µ¤ì¤ë²ñÏÃ¥¤¥Ù¥ó¥È¤Ç¤¹¡£
¡¡°Ê¾å¤Î¤³¤È¤«¤é¡¢¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤Î¾ì¹ç¡¢£±¤Ä¤Î NPC ¤ËÂФ·¤Æ¡¢Ê£¿ô¤Î EventProgressType ¤òÅÐÏ¿¤¹¤ë¤³¤È¤¬É¬Íפˤʤê¤Þ¤¹¡£
EventProgressType.cs
¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£
¡¡ItemName ¥¹¥¯¥ê¥×¥ÈÆâ¤Ë¡¢¥¢¥¤¥Æ¥à¤È¤·¤Æ¡ÖÃê¾Ýʪ¡×¤òÅÐÏ¿¤·¤Æ¤ª¤¯¤³¤È¤Ë¤è¤ê¡¢¤ª¶â¤ä·Ð¸³ÃÍ¡¢¥ì¥Ù¥ë¤ò°ÍÍê¤ÎÂоÝʪ¤Ë¤·¤¿¤ê¡¢¼õ¤±¼è¤ì¤ë¤´Ë«Èþ¤ËÀßÄê¤Ç¤¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¤Þ¤¿¡¢ÌÜŪÃϤˤĤ¤¤¿»þ¤äÆÃÄê¤Î NPC ¤È²ñÏÃ¥¤¥Ù¥ó¥È¤òãÀ®¤·¤¿¾ì¹ç¤Ê¤É¤â¡¢¤³¤Î¤è¤¦¤Ë¥¢¥¤¥Æ¥à¤È¤·¤Æ¼èÆÀ¤Ç¤¤ë¤è¤¦¤Ë´ÉÍý¤·¤Þ¤¹¡£
¤½¤ì¤ò°ÍÍê¤ÎÂоÝʪ¤Ë»ØÄꤹ¤ì¤Ð¡¢ÆÃÄê¤Î¾ì½ê¤Ë¹Ô¤Ã¤¿¤³¤È¤¬¤¢¤ë¤«¡¢ÆÃÄê¤Î NPC ¤È²ñÏä·¤¿¤³¤È¤¬¤¢¤ë¤«¡¢¤È¤¤¤Ã¤¿²ñÏÃ¥¤¥Ù¥ó¥È¤Î°ÍÍê¤È¤·¤ÆÀßÄê¤Ç¤¤Þ¤¹¡£
¡¡¤³¤¦¤¤¤Ã¤¿´ÉÍýÊýË¡¤â¤¢¤ë¤È¤¤¤¦¤³¤È¤ò³Ð¤¨¤Æ¤ª¤¯¤ÈÊØÍø¤Ç¤¹¡£
¡¡¸½ºß¤Î EventData ¥¯¥é¥¹¤Ë¤Ï£±¤Ä¤Î NPC ¤ËÂФ·¤ÆÊ£¿ô¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤òÅÐÏ¿¤Ç¤¤ëÊÑ¿ô¤¬¤¢¤ê¤Þ¤»¤ó¡£
¤³¤Á¤é¤ò½¤Àµ¤·¡¢£±¤Ä¤Î EventData ¥¯¥é¥¹Æâ¤ËÊ£¿ô¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤Î¾ðÊó¤òÅÐÏ¿¤·¤Æ´ÉÍý¤Ç¤¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡¤³¤Î¤è¤¦¤Ë¡¢Æ±¤¸¾ðÊó¤Î²ô¤Ç¡¢¤«¤Ä¡¢¤½¤ÎÆâÍƤ¬²ÄÊѤ¹¤ë¤è¤¦¤ÊÃͤˤĤ¤¤Æ¤ÏÇÛÎó¤ä List ¤òÍøÍѤ¹¤ë¤³¤È¤ò¹Í¤¨¤Æ¤¤¤¯¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡º£²óºîÀ®¤¹¤ë²ñÏäΥ¤¥Ù¥ó¥È¤Ï¡¢Æ±¤¸ NPC ¤¬Ê£¿ô¤Î¾ðÊó¤ò´ÉÍý¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¤³¤È¤¬É¬Íפˤʤê¤Þ¤¹¡£
¡¡¤½¤Î¤¿¤á¡¢EventData ¤ÎÆâÍƤòÀººº¤·¡¢²ñÏÃ¥¤¥Ù¥ó¥È¤ò£±¤Ä¤Î EventData ¥¯¥é¥¹Æâ¤Ë¤Þ¤È¤á¤Æ´ÉÍý¤Ç¤¤ë¤è¤¦¤Ë
¿·¤·¤¯ EventDataDetail ¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£¤³¤ÎÃæ¤Ë¡¢dialogs ÊÑ¿ô¤Ê¤É¤ò´ÉÍý¤µ¤»¤Þ¤¹¡£¿·¤·¤¯ºîÀ®¤·¤¿ EventProgressType ¤Î enum ¤âÍøÍѤ·¤Þ¤¹¡£
¡¡¤Þ¤¿¤¹¤Ç¤Ë¤¢¤Ã¤¿ ItemType ·¿¤È int ·¿¤ÎÊÑ¿ô¤òÇÛÎó¤Ë¤·¤Æ¡¢Ê£¿ô¤Î¥¢¥¤¥Æ¥à¤Î¾ðÊó¤òÅÐÏ¿¤Ç¤¤ë¾õÂ֤ˤ·¤Þ¤¹¡£ÊÑ¿ô̾¤âÊ£¿ô·Á¤ËÊѹ¹¤·¤Þ¤¹¡£
¤³¤ì¤Ï¡¢²ñÏÃ¥¤¥Ù¥ó¥È¤Ë¤è¤Ã¤Æ¡¢¡ÖÊ£¿ô¤Î¥¢¥¤¥Æ¥à¤¬É¬Íפʥ¤¥Ù¥ó¥È¡×¤È¡ÖÊ£¿ô¤Î¥¢¥¤¥Æ¥à¤¬Ê󽷤Ȥ·¤Æ¤â¤é¤¨¤ë¥¤¥Ù¥ó¥È¡×¤òºîÀ®¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ç¤¹¡£
¤³¤³¤Ë¤Ï¡Ö¤ª¶â¡×¤ä¡ÖÌÜŪÃϤ˹Ԥ俤³¤È¤¬¤¢¤ë¡×¡Ö狼¤ÈÏä·¤¿¤³¤È¤¬¤¢¤ë¡×¤È¤¤¤Ã¤¿¤â¤Î¤â´Þ¤Þ¤ì¤Þ¤¹¡£
¡ãEventData ¥¯¥é¥¹¤Ç´ÉÍý¤¹¤ë¾ðÊó¡ä
¡¡ public EventType eventType; // ¥¤¥Ù¥ó¥È¤Î¼ïÎà public int no; // Ä̤·ÈÖ¹æ public string title; // ¥¿¥¤¥È¥ë¡£NPC ¤Î̾Á°¡¢Ãµ¤¹ÂоÝʪ¤Î̾Á°¡¢¤Ê¤É ¡¡¡¡//¡¡£²¤ÄÄɲà public TalkEventNameType talkEventName; public List<EventDataDetail> eventDataDetailsList = new List<EventDataDetail>();
¡ãEventData ¥¯¥é¥¹¤Ç¤Ï¤Ê¤¯¡¢EventDataDetail ¥¯¥é¥¹¤Ç´ÉÍý¤¹¤ë¾ðÊó¡ä
public EventProgressType eventProgressType; [Multiline] public string[] dialogs; ¡¡¡¡¡¡ // NPC ¤Î¥á¥Ã¥»¡¼¥¸¡¢ÂоÝʪ¤Î¥á¥Ã¥»¡¼¥¸¡¢¤Ê¤É public Sprite eventSprite; ¡¡¡¡¡¡¡¡// ¥¤¥Ù¥ó¥È¤Î²èÁü¥Ç¡¼¥¿ public ItemName[] eventItemNames; // ¥¤¥Ù¥ó¥È¤ËɬÍפʥ¢¥¤¥Æ¥à¡¢¤¢¤ë¤¤¤Ï³ÍÆÀ¤Ç¤¤ë¥¢¥¤¥Æ¥à¡£ÇÛÎó¤Ë¤·¤Þ¤¹ public int[] eventItemCounts; // ¥¤¥Ù¥ó¥È¤ËɬÍפʸĿô¡¢¤¢¤ë¤¤¤ÏÆþ¼ê¤Ç¤¤ë¸Ä¿ô¡£ÇÛÎó¤Ë¤·¤Þ¤¹
¡¡EventDataSO ¥¯¥é¥¹´Ö¤Ï¡¢¼¡¤Î¤è¤¦¤Ê¹½À®¤Ë¤Ê¤ê¤Þ¤¹¡£
¡ãEventDataSO ¤Ë´ØÏ¢¤¹¤ë¥¯¥é¥¹¤Î¹½À®¡ä
EventDataSO¡¡¡¡¡ãÊ£¿ô¤Î EventData ¥¯¥é¥¹¤ò List ¤Ç´ÉÍý¤·¤Æ¤¤¤ë¡ä ¡¡¡¡¡Ã ¡¡¡¡¡Ã¡¡¡¼¡¡NPC¡(EventData ¥¯¥é¥¹)¡¡¡¡¡ãÊ£¿ô¤Î EventDataDetail ¥¯¥é¥¹¤ò List ¤Ç´ÉÍý¤·¤Æ¤¤¤ë¡ä ¡¡¡¡¡Ã¡¡¡¡¡¡¡¡¡Ã¡¡¡¼¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¡¡¡°ÍÍê»þ(EventDataDetail ¥¯¥é¥¹) ¡¡¡¡¡Ã¡¡¡¡¡¡¡¡¡Ã¡¡¡¼¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¢¡¡´°Î»»þ(EventDataDetail ¥¯¥é¥¹) ¡¡¡¡¡Ã¡¡¡¡¡¡¡¡¡Ã¡¡¡¼¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È£¡¡½ªÎ»¸å(EventDataDetail ¥¯¥é¥¹) ¡¡¡¡¡Ã ¡¡¡¡¡Ã¡¡¡¼¡¡NPC¢(EventData ¥¯¥é¥¹)¡¡¡¡¡ãÊ£¿ô¤Î EventDataDetail ¥¯¥é¥¹¤ò List ¤Ç´ÉÍý¤·¤Æ¤¤¤ë¡ä ¡¡¡¡¡Ã¡¡¡¡¡¡¡¡¡Ã¡¡¡¼¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¡¡¡°ÍÍê»þ(EventDataDetail ¥¯¥é¥¹) ¡¡¡¡¡Ã¡¡¡¡¡¡¡¡¡Ã¡¡¡¼¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¢¡¡´°Î»»þ(EventDataDetail ¥¯¥é¥¹) ¡¡¡¡¡Ã¡¡¡¡¡¡¡¡¡Ã¡¡¡¼¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È£¡¡½ªÎ»¸å(EventDataDetail ¥¯¥é¥¹) ¡¡¡¡¡Ã
¡¡¤³¤Î¥¤¥á¡¼¥¸¤ò¸µ¤Ë¡¢EventData ¥¯¥é¥¹¤ò½¤Àµ¤·¤Æ¤¤¤¤Þ¤¹¡£
EventData.cs
¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£
¡¡EventData ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë¤È¡¢¿§¡¹¤Ê¥¹¥¯¥ê¥×¥È¤Ç¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤¹¡£
¡¡¤¤¤º¤ì¤«¤Î¥¹¥¯¥ê¥×¥È¤Ë¤ª¤¤¤Æ¥¨¥é¡¼¤¬È¯À¸¤·¤Æ¤¤¤ë¤È¡¢Unity ¤Î¥³¥ó¥Ñ¥¤¥ë¤¬Ä̤é¤Ê¤¤¤¿¤á¡¢
¿·¤·¤¯Äɲä·¤¿ EventData ¤ÎÆâÍƤ¬È¿±Ç¤µ¤ì¤Þ¤»¤ó¡£
¡¡¤½¤Î¤¿¤á¡¢¤Þ¤º¤Ï¥¨¥é¡¼¤Î¸¶°ø¤Î¸¡¾Ú¤ò¹Ô¤¤¤Ê¤¬¤é¡¢Àè¤Ë¼¡¤Î¼ê½ç£³£²¤ÎÆâÍƤò¿Ê¤á¤Æ¤¯¤À¤µ¤¤¡£
¡¡¤½¤·¤Æ¼ê½ç£³£²¤Ç¥¨¥é¡¼¤Î½¤Àµ¤¬´°Î»¤·¤Æ¤«¤é¡¢²¼¤Î¼ê½ç¤ò¿Ê¤á¤Æ¤¯¤À¤µ¤¤¡£
¡¡EventData ¥¯¥é¥¹¤ÎÀ߷פ¬Êѹ¹¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤¿¤á¡¢¿·¤·¤¯²ñÏÃ¥¤¥Ù¥ó¥È¤äõº÷¥¤¥Ù¥ó¥È¤òºÆÅÐÏ¿¤·¤Þ¤¹¡£
¡¡¸½Ãʳ¬¤ÇÅÐÏ¿¤Ç¤¤ë¥¤¥Ù¥ó¥È¤Ï¡Ö¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È(¾õÂ֤˱þ¤¸¤Æ²ñÏä¬ÊѲ½¤¹¤ë)¡×¡¢¡Ö½¾Íè¤Î²ñÏÃ¥¤¥Ù¥ó¥È(Ëè²óƱ¤¸²ñÏä¬È¯À¸¤¹¤ë)¡×¡¢¡Öõº÷¥¤¥Ù¥ó¥È¡×¤Î£³¤Ä¤Ç¤¹¡£
¡¡EventData ¥¯¥é¥¹¤Ø¤Î¾ðÊó¤ÎÅÐÏ¿ÊýË¡¤Ë¤Ä¤¤¤Æ¤Þ¤È¤á¤Þ¤¹¡£¤³¤ì¤Ï°ÊÁ°¤ÈƱ¤¸¤Ç¡¢NPC £±¿Íʬ¡¢ÊõÈ¢£±¤Äʬ¤Î¥Ç¡¼¥¿¤Ë¤Ê¤ê¤Þ¤¹¡£
¡ãEventData ¥¯¥é¥¹Æâ¤ÎÀßÄê¡ä
public EventType eventType; // ¥¤¥Ù¥ó¥È¤Î¼ïÎà public int no; // Ä̤·ÈÖ¹æ public string title; // ¥¿¥¤¥È¥ë¡£NPC ¤Î̾Á°¡¢Ãµ¤¹ÂоÝʪ¤Î̾Á°¡¢¤Ê¤É public List<EventDataDetail> eventDataDetailsList = new List<EventDataDetail>();¡¡¡¡¡¡//¡¡²ñÏÃ¥¤¥Ù¥ó¥È¤Î¾ÜºÙ¤ÎÅÐÏ¿¡¡
¡¡eventType ÊÑ¿ô¤Ïº£¤Þ¤Ç¤ÈƱ¤¸¤Ç¤¹¡£²ñÏä«Ãµº÷¤«¤òÁªÂò¤·¤ÆÅÐÏ¿¤·¤Æ¤¯¤À¤µ¤¤¡£¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤È½¾Íè¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤Ï Talk ¤òÁªÂò¤·¤Þ¤¹¡£
¡¡no ÊÑ¿ô¤âº£¤Þ¤Ç¤ÈƱ¤¸¤Ç¤¹¤¬¡¢²ñÏÃ¥¤¥Ù¥ó¥È¤Ë¤Ä¤¤¤Æ¤Ï½¾Íè¤È¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤ÎξÊý¤òƱ¤¸¿ô»ú¤Ç´ÉÍý¤¹¤ë¤³¤È¤Ë¤Ê¤ë¤¿¤á¡¢½ÅÊ£¤·¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡title ÊÑ¿ô¤â¤¤¤Þ¤Þ¤Ç¤ÈƱ¤¸¤Ç¤¹¡£¥á¥Ã¥»¡¼¥¸¤Îº¸¾å¤Ëɽ¼¨¤µ¤»¤¿¤¤Ì¾Á°¤òµ½Ò¤·¤Æ¤ª¤¤Þ¤¹¡£
¡¡eventDataDetailsList ÊÑ¿ô¤Ï¿·¤·¤¯Äɲä·¤¿ List ·¿¤ÎÊÑ¿ô¤Ç¤¹¡£¤³¤Á¤é¤Ë¤Ï¡¢¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤Î¾ì¹ç¤ÏÊ£¿ô¤Î¾ðÊó¤¬É¬ÍפǤ¹¤Î¤Ç¡¢Size ¤ò 2 °Ê¾å¤ÇºîÀ®¤·¤Þ¤¹¡£(´ðËÜ 3 ¤Ë¤Ê¤ê¤Þ¤¹)
½¾Íè¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤Èõº÷¥¤¥Ù¥ó¥È¤Ë¤Ä¤¤¤Æ¤Ï Size 1 ¤Ë¤·¤ÆÅÐÏ¿¤·¤Þ¤¹¡£
¡¡eventDataDetailsList ÊÑ¿ô¤Î Size ¤Î¿ô¤Ë±þ¤¸¤Æ Element ¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£¤³¤ì¤¬ EventDataDetail ¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£
£±¤Ä¤Î EventDataDetail ¥¯¥é¥¹¤Ë¤Ä¤¡¢Æ±¤¸ NPC ¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤ò£±¤Ä¤º¤ÄÅÐÏ¿¤·¤Æ¤ª¤¤Þ¤¹¡£
¤³¤ÎÊýË¡¤Ë¤è¤ê¡¢£±¤Ä¤Î NPC ¤Ë°Û¤Ê¤ë²ñÏäΥ¤¥Ù¥ó¥È¤òÊ£¿ôÅÐÏ¿¤·¤Æ¤ª¤¯¤³¤È¤¬½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¡ãEventDataDetail ¥¯¥é¥¹Æâ¤ÎÀßÄê¡ä
public EventProgressType eventProgressType; [Multiline] public string[] dialogs; ¡¡¡¡¡¡ // NPC ¤Î¥á¥Ã¥»¡¼¥¸¡¢ÂоÝʪ¤Î¥á¥Ã¥»¡¼¥¸¡¢¤Ê¤É public Sprite eventSprite; ¡¡¡¡¡¡¡¡// ¥¤¥Ù¥ó¥È¤Î²èÁü¥Ç¡¼¥¿ public ItemName[] eventItemNames; // ¥¤¥Ù¥ó¥È¤ËɬÍפʥ¢¥¤¥Æ¥à¡¢¤¢¤ë¤¤¤Ï³ÍÆÀ¤Ç¤¤ë¥¢¥¤¥Æ¥à¡£ÇÛÎó¤Ë¤·¤Þ¤¹ public int[] eventItemCounts; // ¥¤¥Ù¥ó¥È¤ËɬÍפʸĿô¡¢¤¢¤ë¤¤¤ÏÆþ¼ê¤Ç¤¤ë¸Ä¿ô¡£ÇÛÎó¤Ë¤·¤Þ¤¹
¡¡ÅÐÏ¿¤¹¤ëºÝ¤Î¥Ñ¥¿¡¼¥ó¤ò·ÇºÜ¤·¤Æ¤ª¤¤Þ¤¹¡£
¡ã¥¿¥¤¥×£±¡¡½¾Íè¤Î²ñÏÃ¥¤¥Ù¥ó¥È¡ä
eventProgressType = EventProgressType.None dialogs = NPC ¤Î¥á¥Ã¥»¡¼¥¸¡£¸ÇÄꡣʣ¿ô¥Ú¡¼¥¸¤Ç¤ÎÅÐÏ¿²Äǽ eventItemNames = [Size] 0 eventItemCounts = [Size] 0
¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤Ï°Ê²¼¤Î¤è¤¦¤Ê£³¤Ä¤Î¥Ñ¥¿¡¼¥ó¤ÎÁȤ߹ç¤ï¤»¤Ë¤Ê¤ê¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢eventDataDetailsList ÊÑ¿ô¤ÎÃÍ Size ¤Ï 3 ¤Ë¤Ê¤ê¤Þ¤¹¡£List ¤Ç´ÉÍý¤·¤Æ¤¤¤ë¤Î¤Ç¡¢£±¤Ä¤Î NPC ¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤È¤·¤Æ«¤Í¤Æ´ÉÍý½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¡ã¥¿¥¤¥×£²¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¡¡¡°ÍÍêÍÑ¡ä
eventProgressType = EventProgressType.Need ¤«¡¢EventProgressType.Permission ¤òÁªÂò¤¹¤ë dialogs = NPC ¤Î¥á¥Ã¥»¡¼¥¸¡£°ÍÍꤹ¤ëºÝ¤Î¤â¤Î¤òÀßÄꡣʣ¿ô¥Ú¡¼¥¸¤Ç¤ÎÅÐÏ¿²Äǽ eventItemNames = [Size] 1 °Ê¾å¡£¥×¥ì¥¤¥ä¡¼¤Ë°ÍÍꤹ¤ë¥¢¥¤¥Æ¥à¤ä¤ª¶â¤Ê¤É¤òÅÐÏ¿¤¹¤ë¡£Ê£¿ô°ÍÍê²Äǽ¡£¤³¤ì¤é¤¬°ÍÍê¤òãÀ®¤¹¤ë¤¿¤á¤ËɬÍפˤʤë eventItemCounts = [Size] 1 °Ê¾å¡£eventItemNames ÊÑ¿ô¤Î Size ¤ÈƱ¤¸¤Ë¤¹¤ë¤³¤È¡£°ÍÍꤹ¤ë¥¢¥¤¥Æ¥à¤ä¤ª¶â¤ÎÃͤòÅÐÏ¿¤¹¤ë¡£eventItemNames[0] <=> eventItemCounts[0] ¤Î¤è¤¦¤Ë¡¢£±ÂУ±¤Ç¤Ä¤Ê¤²¤ë¤³¤È
¡ã¥¿¥¤¥×£³¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¢¡¡°ÍÍ괰λ»þÍÑ¡ä
eventProgressType = EventProgressType.Get ¤òÁªÂò¤¹¤ë dialogs = NPC ¤Î¥á¥Ã¥»¡¼¥¸¡£°ÍÍ꤬´°Î»¤·¤¿ºÝ¤Î¤â¤Î¤òÀßÄꡣʣ¿ô¥Ú¡¼¥¸¤Ç¤ÎÅÐÏ¿²Äǽ eventItemNames = [Size] 1 °Ê¾å¡£¥×¥ì¥¤¥ä¡¼¤Ë¤¢¤²¤ë¥¢¥¤¥Æ¥à¤ä¤ª¶â¤Ê¤É¤òÅÐÏ¿¤¹¤ë¡£Ê£¿ô°ÍÍê²Äǽ¡£¤³¤ì¤é¤¬°ÍÍêãÀ®»þ¤ËÆþ¼ê¤Ç¤¤ë eventItemCounts = [Size] 1 °Ê¾å¡£eventItemNames ÊÑ¿ô¤Î Size ¤ÈƱ¤¸¤Ë¤¹¤ë¤³¤È¡£¼õ¤±¼è¤ì¤ë¥¢¥¤¥Æ¥à¤ä¤ª¶â¤ÎÃͤòÅÐÏ¿¤¹¤ë¡£eventItemNames[0] <=> eventItemCounts[0] ¤Î¤è¤¦¤Ë¡¢£±ÂУ±¤Ç¤Ä¤Ê¤²¤ë¤³¤È
¡ã¥¿¥¤¥×£´¡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È£¡¡°ÍÍ꽪λ¸åÍÑ¡ä
eventProgressType = EventProgressType.Cleared ¤òÁªÂò¤¹¤ë dialogs = NPC ¤Î¥á¥Ã¥»¡¼¥¸¡£°ÍÍ꤬´°Î»¤·¤Æ¡¢¤½¤Î¸å¤Î¤â¤Î¤òÀßÄꡣʣ¿ô¥Ú¡¼¥¸¤Ç¤ÎÅÐÏ¿²Äǽ eventItemNames = [Size] 0 eventItemCounts = [Size] 0
¡¡Ãµº÷¥¤¥Ù¥ó¥ÈÍѤǤ¹
¡ã¥¿¥¤¥×£µ¡¡Ãµº÷¥¤¥Ù¥ó¥È¡ä
eventProgressType = EventProgressType.None dialogs = ³ÍÆÀ¤·¤¿¥¢¥¤¥Æ¥à¤È¸Ä¿ô¤¬¼«Æ°Åª¤Ëɽ¼¨¤µ¤ì¤ë¤¿¤á¡¢Size 0 ¤Ç¤â¹½¤¤¤Þ¤»¤ó¡£Ê£¿ô¥Ú¡¼¥¸¤Ç¤ÎÅÐÏ¿²Äǽ eventItemNames = [Size] 1 °Ê¾å¥×¥ì¥¤¥ä¡¼¤Ë¤¢¤²¤ë¥¢¥¤¥Æ¥à¤ä¤ª¶â¤Ê¤É¤òÅÐÏ¿¤¹¤ë¡£Ê£¿ô°ÍÍê²Äǽ¡£¤³¤ì¤é¤¬°ÍÍêãÀ®»þ¤ËÆþ¼ê¤Ç¤¤ë eventItemCounts = [Size] 1 °Ê¾å¡£eventItemNames ÊÑ¿ô¤Î Size ¤ÈƱ¤¸¤Ë¤¹¤ë¤³¤È¡£¼õ¤±¼è¤ì¤ë¥¢¥¤¥Æ¥à¤ä¤ª¶â¤ÎÃͤòÅÐÏ¿¤¹¤ë¡£eventItemNames[0] <=> eventItemCounts[0] ¤Î¤è¤¦¤Ë¡¢£±ÂУ±¤Ç¤Ä¤Ê¤²¤ë¤³¤È
¡¡´ðËÜŪ¤Ë¤Ï¤³¤ì¤é¤Î¥Ñ¥¿¡¼¥ó¤Ç EventData ¤È EventDataDetail ¤ò½ç¼¡ÅÐÏ¿¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡¾åµ¤ò¼ÂºÝ¤ËÅìÆä·¤¿ºÝ¤Î²èÁü¤ò»²¹ÍÍѤËźÉÕ¤·¤Æ¤ª¤¤Þ¤¹¡£¼«Í³¤ËÅÐÏ¿¤·¤Æ¤¯¤À¤µ¤¤¡£
¡ãÅÐÏ¿Îã¡¡¡Ä̾ï¤Î²ñÏÃ¥¤¥Ù¥ó¥È(²ñÏøÇÄê)¡ä
Element 0 ¡¡¥Ñ¥¿¡¼¥ó£±¡¦EventProgressType ¤ò None ¤ËÀßÄꤹ¤ë
¡ãÅÐÏ¿Î㢡¡¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¡ä
Element 0 ¡¡¥Ñ¥¿¡¼¥ó£²¡¦°ÍÍêÍÑ¡£EventProgressType ¤ò Need ¤« Permission ¤ËÀßÄꤹ¤ë
Element 1 ¡¡¥Ñ¥¿¡¼¥ó£³¡¦°ÍÍ괰λÍÑ¡£EventProgressType ¤ò Get ¤ËÀßÄꤹ¤ë
Element 2 ¡¡¥Ñ¥¿¡¼¥ó£´¡¦°ÍÍ괰λ°Ê¸åÍÑ¡£EventProgressType ¤ò Cleard ¤ËÀßÄꤹ¤ë
¡ãÅÐÏ¿Î㣡¡¥Ñ¥¿¡¼¥ó£µ¡¦Ãµº÷¥¤¥Ù¥ó¥È(ÊõÈ¢¤ÎÃæ¿È¤Ï£³¼ïÎà)¡ä
Element 0 ¡¡EventProgressType ¤ò None ¤ËÀßÄꤹ¤ë
¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£
¡¡¼¡¤Ï¡¡¼ê½ç£³£²¡¡¡¼¿Ê¹Ô·¿¤Î²ñÏÃ¥¤¥Ù¥ó¥È¤Î¼ÂÁõ¡¼¡¡¤Ç¤¹¡£
- ¥«¥Æ¥´¥ê¡§
- ¿Ê³Ø/¥¹¥¯¡¼¥ë
- ¥×¥í¥°¥é¥ß¥ó¥°
¥³¥á¥ó¥È¤ò¤«¤¯