示例#1
0
    // Token: 0x06000B2C RID: 2860 RVA: 0x00064D60 File Offset: 0x00062F60
    public static OBS_OBJECT_WORK Init(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y,
                                       byte type)
    {
        if (AppMain.g_gs_main_sys_info.game_mode == 1)
        {
            eve_rec.pos_x = byte.MaxValue;
            return(null);
        }

        OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y,
                                                                        () => new GMS_GMK_PMARKER_WORK(), "GMK_POINT_MARKER");
        GMS_GMK_PMARKER_WORK gms_GMK_PMARKER_WORK = (GMS_GMK_PMARKER_WORK)obs_OBJECT_WORK;
        OBS_OBJECT_WORK      obs_OBJECT_WORK2     = obs_OBJECT_WORK;

        obs_OBJECT_WORK2.pos.y = obs_OBJECT_WORK2.pos.y + 4096;
        if (AppMain.g_gs_main_sys_info.stage_id == 9)
        {
            obs_OBJECT_WORK.pos.z = -131072;
        }
        else
        {
            obs_OBJECT_WORK.pos.z = -65536;
        }

        obs_OBJECT_WORK.move_flag       |= 8448U;
        obs_OBJECT_WORK.disp_flag       |= 4194304U;
        gms_GMK_PMARKER_WORK.marker_prty = (ushort)eve_rec.left;
        gmGmkPointMarkerStart(obs_OBJECT_WORK);
        return(obs_OBJECT_WORK);
    }
示例#2
0
    // Token: 0x06000B2F RID: 2863 RVA: 0x00064E8C File Offset: 0x0006308C
    private static void gmGmkPointMarkerHit(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect)
    {
        GMS_GMK_PMARKER_WORK gms_GMK_PMARKER_WORK = (GMS_GMK_PMARKER_WORK)mine_rect.parent_obj;
        GMS_PLAYER_WORK      gms_PLAYER_WORK      = (GMS_PLAYER_WORK)match_rect.parent_obj;

        gms_GMK_PMARKER_WORK.markerdist = gms_GMK_PMARKER_WORK.OBJWORK.pos.x - gms_PLAYER_WORK.obj_work.pos.x;
        if ((gms_GMK_PMARKER_WORK.markerdist <= 16384 && gms_GMK_PMARKER_WORK.markerdist >= -16384) ||
            (gms_GMK_PMARKER_WORK.markerdist < 16384 && gms_GMK_PMARKER_WORK.markerdistlast >= 16384) ||
            (gms_GMK_PMARKER_WORK.markerdist > -16384 && gms_GMK_PMARKER_WORK.markerdistlast <= -16384))
        {
            if (AppMain.g_gm_main_system.marker_pri < (uint)gms_GMK_PMARKER_WORK.marker_prty)
            {
                GmPlayer.SetMarkerPoint(gms_PLAYER_WORK, gms_GMK_PMARKER_WORK.OBJWORK.pos.x,
                                        gms_GMK_PMARKER_WORK.OBJWORK.pos.y);
                AppMain.g_gm_main_system.marker_pri = (uint)gms_GMK_PMARKER_WORK.marker_prty;
                gms_GMK_PMARKER_WORK.marker_prty    = 0;
                gms_GMK_PMARKER_WORK.hitcounter     = 2;
                SaveState.saveCurrentState(1);
            }

            gms_GMK_PMARKER_WORK.OBJWORK.flag |= 2U;
            return;
        }

        mine_rect.flag &= 4294573823U;
    }
示例#3
0
    // Token: 0x06000B30 RID: 2864 RVA: 0x00064FA8 File Offset: 0x000631A8
    private static void gmGmkPointMarkerStay(OBS_OBJECT_WORK obj_work)
    {
        GMS_GMK_PMARKER_WORK gms_GMK_PMARKER_WORK = (GMS_GMK_PMARKER_WORK)obj_work;

        AppMain.ObjDrawObjectActionSet(obj_work, 0);
        gms_GMK_PMARKER_WORK.markerdist = 0;
        gms_GMK_PMARKER_WORK.hitcounter = 0;
        obj_work.ppFunc = gmGmkPointMarkerStay_100;
    }
示例#4
0
    // Token: 0x06000B33 RID: 2867 RVA: 0x00065060 File Offset: 0x00063260
    private static void gmGmkPointMarkerStay_210(OBS_OBJECT_WORK obj_work)
    {
        GMS_GMK_PMARKER_WORK gms_GMK_PMARKER_WORK = (GMS_GMK_PMARKER_WORK)obj_work;

        if ((obj_work.disp_flag & 8U) != 0U)
        {
            gms_GMK_PMARKER_WORK.hitcounter--;
            if (gms_GMK_PMARKER_WORK.hitcounter == 0)
            {
                AppMain.ObjDrawObjectActionSet(obj_work, 0);
                obj_work.ppFunc = gmGmkPointMarkerStay_300;
                return;
            }

            gmGmkPointMarkerStay_200(obj_work);
        }
    }
示例#5
0
    // Token: 0x06000B31 RID: 2865 RVA: 0x00064FE4 File Offset: 0x000631E4
    private static void gmGmkPointMarkerStay_100(OBS_OBJECT_WORK obj_work)
    {
        GMS_GMK_PMARKER_WORK gms_GMK_PMARKER_WORK = (GMS_GMK_PMARKER_WORK)obj_work;

        gms_GMK_PMARKER_WORK.markerdistlast = gms_GMK_PMARKER_WORK.markerdist;
        gms_GMK_PMARKER_WORK.markerdist     = 0;
        if (gms_GMK_PMARKER_WORK.hitcounter > 0)
        {
            GmSound.PlaySE("Marker");
            gmGmkPointMarkerStay_200(obj_work);
            return;
        }

        if (AppMain.g_gm_main_system.marker_pri >= (uint)gms_GMK_PMARKER_WORK.marker_prty)
        {
            gms_GMK_PMARKER_WORK.marker_prty = 0;
            gmGmkPointMarkerStay_400(obj_work);
        }
    }