// Token: 0x060003D9 RID: 985 RVA: 0x0001EF58 File Offset: 0x0001D158 private static OBS_OBJECT_WORK GmEneMotoraInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type) { OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENE_MOTORA_WORK(), "ENE_MOTORA"); AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK; AppMain.GMS_ENE_MOTORA_WORK gms_ENE_MOTORA_WORK = (AppMain.GMS_ENE_MOTORA_WORK)obs_OBJECT_WORK; AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_ene_motora_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d); AppMain.ObjObjectAction3dNNMotionLoad(obs_OBJECT_WORK, 0, true, AppMain.ObjDataGet(663), null, 0, null); AppMain.ObjDrawObjectSetToon(obs_OBJECT_WORK); obs_OBJECT_WORK.pos.z = 0; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1]; AppMain.ObjRectWorkSet(obs_RECT_WORK, -11, -24, 11, 0); obs_RECT_WORK.flag |= 4U; obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[0]; AppMain.ObjRectWorkSet(obs_RECT_WORK, -19, -32, 19, 0); obs_RECT_WORK.flag |= 4U; gms_ENEMY_3D_WORK.ene_com.rect_work[2].flag &= 4294967291U; obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[2]; AppMain.ObjRectWorkSet(obs_RECT_WORK, -19, -32, 19, 0); obs_RECT_WORK.flag &= 4294967291U; AppMain.ObjObjectFieldRectSet(obs_OBJECT_WORK, -4, -8, 4, -2); obs_OBJECT_WORK.move_flag |= 128U; if ((eve_rec.flag & 1) == 0) { obs_OBJECT_WORK.disp_flag |= 1U; } obs_OBJECT_WORK.user_work = ( uint )(obs_OBJECT_WORK.pos.x + (( int )eve_rec.left << 12)); obs_OBJECT_WORK.user_flag = ( uint )(obs_OBJECT_WORK.pos.x + (( int )(eve_rec.left + ( sbyte )eve_rec.width) << 12)); gms_ENE_MOTORA_WORK.spd_dec = 102; gms_ENE_MOTORA_WORK.spd_dec_dist = 20480; AppMain.gmEneMotoraWalkInit(obs_OBJECT_WORK); obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U; obs_OBJECT_WORK.obj_3d.use_light_flag |= 64U; return(obs_OBJECT_WORK); }
// Token: 0x060003DD RID: 989 RVA: 0x0001F1FC File Offset: 0x0001D3FC private static void gmEneMotoraWalkMain(OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENE_MOTORA_WORK motora_work = (AppMain.GMS_ENE_MOTORA_WORK)obj_work; bool flag = AppMain.gmEneMotoraSetWalkSpeed(motora_work); if (flag) { AppMain.gmEneMotoraFlipInit(obj_work); } }
private static bool gmEneMotoraSetWalkSpeed(AppMain.GMS_ENE_MOTORA_WORK motora_work) { bool flag = false; AppMain.OBS_OBJECT_WORK obsObjectWork = (AppMain.OBS_OBJECT_WORK)motora_work; if (((int)obsObjectWork.disp_flag & 1) != 0) { if (obsObjectWork.obj_3d.act_id[0] == 4 && (double)obsObjectWork.obj_3d.frame[0] >= 20.0) { obsObjectWork.spd.x = AppMain.ObjSpdUpSet(obsObjectWork.spd.x, motora_work.spd_dec, 2048); } else if (obsObjectWork.pos.x <= Convert.ToInt32(obsObjectWork.user_work) + motora_work.spd_dec_dist) { obsObjectWork.spd.x = AppMain.ObjSpdDownSet(obsObjectWork.spd.x, motora_work.spd_dec); flag = true; if (obsObjectWork.spd.x == 0 && obsObjectWork.pos.x > Convert.ToInt32(obsObjectWork.user_work)) { obsObjectWork.spd.x = Convert.ToInt32(obsObjectWork.user_work) - obsObjectWork.pos.x; if (obsObjectWork.spd.x < -motora_work.spd_dec) { obsObjectWork.spd.x = -motora_work.spd_dec; } } } else if (obsObjectWork.spd.x > -2048) { obsObjectWork.spd.x = AppMain.ObjSpdUpSet(obsObjectWork.spd.x, -motora_work.spd_dec, 2048); } } else if (obsObjectWork.obj_3d.act_id[0] == 3 && (double)obsObjectWork.obj_3d.frame[0] >= 20.0) { obsObjectWork.spd.x = AppMain.ObjSpdUpSet(obsObjectWork.spd.x, -motora_work.spd_dec, 2048); } else if (obsObjectWork.pos.x >= Convert.ToInt32(obsObjectWork.user_flag) - motora_work.spd_dec_dist) { obsObjectWork.spd.x = AppMain.ObjSpdDownSet(obsObjectWork.spd.x, motora_work.spd_dec); flag = true; if (obsObjectWork.spd.x == 0 && obsObjectWork.pos.x < Convert.ToInt32(obsObjectWork.user_flag)) { obsObjectWork.spd.x = Convert.ToInt32(obsObjectWork.user_flag) - obsObjectWork.pos.x; if (obsObjectWork.spd.x > motora_work.spd_dec) { obsObjectWork.spd.x = motora_work.spd_dec; } } } else if (obsObjectWork.spd.x < 2048) { obsObjectWork.spd.x = AppMain.ObjSpdUpSet(obsObjectWork.spd.x, motora_work.spd_dec, 2048); } return(flag); }
// Token: 0x060003DE RID: 990 RVA: 0x0001F220 File Offset: 0x0001D420 private static bool gmEneMotoraSetWalkSpeed(AppMain.GMS_ENE_MOTORA_WORK motora_work) { bool result = false; OBS_OBJECT_WORK obs_OBJECT_WORK = (OBS_OBJECT_WORK)motora_work; if ((obs_OBJECT_WORK.disp_flag & 1U) != 0U) { if (obs_OBJECT_WORK.obj_3d.act_id[0] == 4 && obs_OBJECT_WORK.obj_3d.frame[0] >= 20f) { obs_OBJECT_WORK.spd.x = AppMain.ObjSpdUpSet(obs_OBJECT_WORK.spd.x, motora_work.spd_dec, 2048); } else if (obs_OBJECT_WORK.pos.x <= Convert.ToInt32(obs_OBJECT_WORK.user_work) + motora_work.spd_dec_dist) { obs_OBJECT_WORK.spd.x = AppMain.ObjSpdDownSet(obs_OBJECT_WORK.spd.x, motora_work.spd_dec); result = true; if (obs_OBJECT_WORK.spd.x == 0 && obs_OBJECT_WORK.pos.x > Convert.ToInt32(obs_OBJECT_WORK.user_work)) { obs_OBJECT_WORK.spd.x = Convert.ToInt32(obs_OBJECT_WORK.user_work) - obs_OBJECT_WORK.pos.x; if (obs_OBJECT_WORK.spd.x < -motora_work.spd_dec) { obs_OBJECT_WORK.spd.x = -motora_work.spd_dec; } } } else if (obs_OBJECT_WORK.spd.x > -2048) { obs_OBJECT_WORK.spd.x = AppMain.ObjSpdUpSet(obs_OBJECT_WORK.spd.x, -motora_work.spd_dec, 2048); } } else if (obs_OBJECT_WORK.obj_3d.act_id[0] == 3 && obs_OBJECT_WORK.obj_3d.frame[0] >= 20f) { obs_OBJECT_WORK.spd.x = AppMain.ObjSpdUpSet(obs_OBJECT_WORK.spd.x, -motora_work.spd_dec, 2048); } else if (obs_OBJECT_WORK.pos.x >= Convert.ToInt32(obs_OBJECT_WORK.user_flag) - motora_work.spd_dec_dist) { obs_OBJECT_WORK.spd.x = AppMain.ObjSpdDownSet(obs_OBJECT_WORK.spd.x, motora_work.spd_dec); result = true; if (obs_OBJECT_WORK.spd.x == 0 && obs_OBJECT_WORK.pos.x < Convert.ToInt32(obs_OBJECT_WORK.user_flag)) { obs_OBJECT_WORK.spd.x = Convert.ToInt32(obs_OBJECT_WORK.user_flag) - obs_OBJECT_WORK.pos.x; if (obs_OBJECT_WORK.spd.x > motora_work.spd_dec) { obs_OBJECT_WORK.spd.x = motora_work.spd_dec; } } } else if (obs_OBJECT_WORK.spd.x < 2048) { obs_OBJECT_WORK.spd.x = AppMain.ObjSpdUpSet(obs_OBJECT_WORK.spd.x, motora_work.spd_dec, 2048); } return(result); }
private static AppMain.OBS_OBJECT_WORK GmEneMotoraInit( AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type) { AppMain.OBS_OBJECT_WORK work = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_ENE_MOTORA_WORK()), "ENE_MOTORA"); AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)work; AppMain.GMS_ENE_MOTORA_WORK gmsEneMotoraWork = (AppMain.GMS_ENE_MOTORA_WORK)work; AppMain.ObjObjectCopyAction3dNNModel(work, AppMain.gm_ene_motora_obj_3d_list[0], gmsEnemy3DWork.obj_3d); AppMain.ObjObjectAction3dNNMotionLoad(work, 0, true, AppMain.ObjDataGet(663), (string)null, 0, (AppMain.AMS_AMB_HEADER)null); AppMain.ObjDrawObjectSetToon(work); work.pos.z = 0; AppMain.OBS_RECT_WORK pRec1 = gmsEnemy3DWork.ene_com.rect_work[1]; AppMain.ObjRectWorkSet(pRec1, (short)-11, (short)-24, (short)11, (short)0); pRec1.flag |= 4U; AppMain.OBS_RECT_WORK pRec2 = gmsEnemy3DWork.ene_com.rect_work[0]; AppMain.ObjRectWorkSet(pRec2, (short)-19, (short)-32, (short)19, (short)0); pRec2.flag |= 4U; gmsEnemy3DWork.ene_com.rect_work[2].flag &= 4294967291U; AppMain.OBS_RECT_WORK pRec3 = gmsEnemy3DWork.ene_com.rect_work[2]; AppMain.ObjRectWorkSet(pRec3, (short)-19, (short)-32, (short)19, (short)0); pRec3.flag &= 4294967291U; AppMain.ObjObjectFieldRectSet(work, (short)-4, (short)-8, (short)4, (short)-2); work.move_flag |= 128U; if (((int)eve_rec.flag & 1) == 0) { work.disp_flag |= 1U; } work.user_work = (uint)(work.pos.x + ((int)eve_rec.left << 12)); work.user_flag = (uint)(work.pos.x + ((int)eve_rec.left + (int)eve_rec.width << 12)); gmsEneMotoraWork.spd_dec = 102; gmsEneMotoraWork.spd_dec_dist = 20480; AppMain.gmEneMotoraWalkInit(work); work.obj_3d.use_light_flag &= 4294967294U; work.obj_3d.use_light_flag |= 64U; return(work); }