コード例 #1
0
        // _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
        //     Constructor
        // _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

        /// <summary>
        /// コンストラクタ
        /// </summary>
        /// <param name="value">[Range(9100000, 9179999)] 変数アドレス値</param>
        /// <exception cref="ArgumentOutOfRangeException">valueがイベント座標アドレス値として不適切な場合</exception>
        public EventInfoAddress(int value) : base(value)
        {
            InfoType   = InfoAddressInfoType.FromCode(Value.SubInt(0, 1));
            MapEventId = Value.SubInt(1, 4);

            // 未対応チェック 未対応の場合警告ログ出力
            VersionCheck(value);
        }
コード例 #2
0
        public static void ToIntTest(int value)
        {
            var instance = new MapEventId(value);

            var intValue = instance.ToInt();

            // セットした値と取得した値が一致すること
            Assert.AreEqual(intValue, value);
        }
コード例 #3
0
        public static void ConstructorTest(int value, bool isError)
        {
            var errorOccured = false;

            try
            {
                var _ = new MapEventId(value);
            }
            catch (Exception ex)
            {
                logger.Exception(ex);
                errorOccured = true;
            }

            // エラーフラグが一致すること
            Assert.AreEqual(errorOccured, isError);
        }
コード例 #4
0
        /// <summary>
        /// マップイベント名を取得する。
        /// </summary>
        /// <param name="mapEventId">マップイベントID</param>
        /// <param name="type">[NotNull] イベントコマンド種別</param>
        /// <param name="desc">[Nullable] 付加情報</param>
        /// <returns>
        ///     イベント名。
        ///     該当マップがプロジェクト内に読み込まれていない場合、空文字。
        /// </returns>
        public (bool, MapEventName) GetMapEventName(MapEventId mapEventId,
                                                    EventCommandSentenceType type, EventCommandSentenceResolveDesc desc)
        {
            const string notFound = "";

            if (mapEventId == -1)
            {
                return(true, "このマップイベント");
            }

            var targetEvent = Master.MapData?.MapEvents.FirstOrDefault(x => x.MapEventId == mapEventId);

            if (targetEvent is null)
            {
                return(false, notFound);
            }

            return(true, targetEvent.EventName);
        }
コード例 #5
0
        public static void CastToIntTest(int value)
        {
            var castValue = 0;

            var instance = new MapEventId(value);

            var errorOccured = false;

            try
            {
                castValue = instance;
            }
            catch (Exception ex)
            {
                logger.Exception(ex);
                errorOccured = true;
            }

            // エラーが発生しないこと
            Assert.IsFalse(errorOccured);

            // 元の値と一致すること
            Assert.AreEqual(castValue, value);
        }
コード例 #6
0
        // _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
        //     Constructor
        // _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

        /// <summary>
        /// コンストラクタ
        /// </summary>
        /// <param name="value">[Range(1000000, 1099999)] 変数アドレス値</param>
        /// <exception cref="ArgumentOutOfRangeException">valueがマップイベントセルフ変数アドレス値として不適切な場合</exception>
        public MapEventVariableAddress(int value) : base(value)
        {
            VariableIndex = value.SubInt(0, 1);
            MapEventId    = value.SubInt(1, 4);
        }
コード例 #7
0
 public string MakeEventCommandSentenceForMapEvent(MapEventId mapEventId)
 {
     return(string.Format(EventCommandStringFormat, $"Ev{mapEventId}"));
 }