Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. long double g_OrgSpeedBySRCME[2][30][2][2][4];
  2. //----- (0000000000821924) ----------------------------------------------------
  3. long double __fastcall CPCParamDB::GetOrgSpeed(
  4.         CPCParamDB *this,
  5.         unsigned int sex,
  6.         unsigned int clstype,
  7.         unsigned int mt,
  8.         EnvType env,
  9.         RaceType race)
  10. {
  11.   __int64 v6; // r11
  12.   __int64 v7; // rdx
  13.   RaceType v8; // r8d
  14.  
  15.   v6 = (int)sex;
  16.   if ( sex > 1 || clstype > 0xC0 || mt > 1 || (unsigned int)env > ENV_HOVER )
  17.   {
  18.     CLog::Add(
  19.       &Log,
  20.       LOG_ERROR,
  21.       (wchar_t *)L"[%s][%d] Some parameter is invalid sex[%d] clstype[%d] movetype[%d] envtype[%d]",
  22.       L"pc_param.cpp",
  23.       1528,
  24.       sex,
  25.       clstype,
  26.       mt,
  27.       env);
  28.     return 0.0;
  29.   }
  30.   else
  31.   {
  32.     v7 = (int)clstype;
  33.     if ( (unsigned int)(*((_DWORD *)&stru_C69320 + (int)clstype + 1048580) - 4) <= 1 )
  34.       v8 = race;
  35.     else
  36.       v8 = *((_DWORD *)&stru_C69028 + (int)clstype + 1048578);
  37.     return g_OrgSpeedBySRCME[v6][v8][*((int *)&stru_C69618 + v7 + 1048582)][mt][env];
  38.   }
  39. }
  40. void __fastcall User::SetOrgSpeed(
  41.         User *this,
  42.         int *nOrgSpeed0,
  43.         int *nOrgSpeed1,
  44.         int *nOrgSpeed2,
  45.         int *nOrgSpeed3,
  46.         int *nOrgSpeed4,
  47.         int *nOrgSpeed5,
  48.         int *nOrgSpeed6,
  49.         int *nOrgSpeed7)
  50. {
  51.   CNPC *m_pPolymorphNPC; // rdx
  52.   const PetDataSheet::Record *v14; // rax
  53.  
  54.   *nOrgSpeed0 = (int)CPCParamDB::GetOrgSpeed(
  55.                        &g_PCParamDB,
  56.                        this->m_data->m_Sex,
  57.                        this->m_data->m_nClass,
  58.                        1u,
  59.                        ENV_GROUND,
  60.                        this->m_data->m_Race);
  61.   *nOrgSpeed1 = (int)CPCParamDB::GetOrgSpeed(
  62.                        &g_PCParamDB,
  63.                        this->m_data->m_Sex,
  64.                        this->m_data->m_nClass,
  65.                        0,
  66.                        ENV_GROUND,
  67.                        this->m_data->m_Race);
  68.   *nOrgSpeed2 = (int)CPCParamDB::GetOrgSpeed(
  69.                        &g_PCParamDB,
  70.                        this->m_data->m_Sex,
  71.                        this->m_data->m_nClass,
  72.                        1u,
  73.                        ENV_UNDERWATER,
  74.                        this->m_data->m_Race);
  75.   *nOrgSpeed3 = (int)CPCParamDB::GetOrgSpeed(
  76.                        &g_PCParamDB,
  77.                        this->m_data->m_Sex,
  78.                        this->m_data->m_nClass,
  79.                        0,
  80.                        ENV_UNDERWATER,
  81.                        this->m_data->m_Race);
  82.   *nOrgSpeed4 = (int)CPCParamDB::GetOrgSpeed(
  83.                        &g_PCParamDB,
  84.                        this->m_data->m_Sex,
  85.                        this->m_data->m_nClass,
  86.                        1u,
  87.                        ENV_HOVER,
  88.                        this->m_data->m_Race);
  89.   *nOrgSpeed5 = (int)CPCParamDB::GetOrgSpeed(
  90.                        &g_PCParamDB,
  91.                        this->m_data->m_Sex,
  92.                        this->m_data->m_nClass,
  93.                        0,
  94.                        ENV_HOVER,
  95.                        this->m_data->m_Race);
  96.   *nOrgSpeed6 = (int)CPCParamDB::GetOrgSpeed(
  97.                        &g_PCParamDB,
  98.                        this->m_data->m_Sex,
  99.                        this->m_data->m_nClass,
  100.                        1u,
  101.                        ENV_AIR,
  102.                        this->m_data->m_Race);
  103.   *nOrgSpeed7 = (int)CPCParamDB::GetOrgSpeed(
  104.                        &g_PCParamDB,
  105.                        this->m_data->m_Sex,
  106.                        this->m_data->m_nClass,
  107.                        0,
  108.                        ENV_AIR,
  109.                        this->m_data->m_Race);
  110.   m_pPolymorphNPC = this->m_pPolymorphNPC;
  111.   if ( m_pPolymorphNPC )
  112.   {
  113.     *nOrgSpeed0 = m_pPolymorphNPC->m_pClassConst->m_SpeedByME[1][0];
  114.     *nOrgSpeed1 = m_pPolymorphNPC->m_pClassConst->m_SpeedByME[0][0];
  115.     *nOrgSpeed2 = m_pPolymorphNPC->m_pClassConst->m_SpeedByME[1][1];
  116.     *nOrgSpeed3 = m_pPolymorphNPC->m_pClassConst->m_SpeedByME[0][1];
  117.     *nOrgSpeed4 = m_pPolymorphNPC->m_pClassConst->m_SpeedByME[1][3];
  118.     *nOrgSpeed5 = m_pPolymorphNPC->m_pClassConst->m_SpeedByME[0][3];
  119.     *nOrgSpeed6 = m_pPolymorphNPC->m_pClassConst->m_SpeedByME[1][2];
  120.     *nOrgSpeed7 = m_pPolymorphNPC->m_pClassConst->m_SpeedByME[0][2];
  121.   }
  122.   if ( this->IsRiding(this) )
  123.   {
  124.     v14 = CCommonRidingInfo::Record(&this->m_pStriderInfo->m_commonInfo);
  125.     *nOrgSpeed0 = v14->mSpeedOnRide[1][0];
  126.     *nOrgSpeed1 = v14->mSpeedOnRide[0][0];
  127.     *nOrgSpeed2 = v14->mSpeedOnRide[1][1];
  128.     *nOrgSpeed3 = v14->mSpeedOnRide[0][1];
  129.     *nOrgSpeed4 = v14->mSpeedOnRide[1][3];
  130.     *nOrgSpeed5 = v14->mSpeedOnRide[0][3];
  131.     *nOrgSpeed6 = v14->mSpeedOnRide[1][2];
  132.     *nOrgSpeed7 = v14->mSpeedOnRide[0][2];
  133.   }
  134.   if ( User::IsTransformedExceptModeChange(this) )
  135.   {
  136.     *nOrgSpeed0 = (int)this->m_transform->m_commonData->orgSpeed[1][0];
  137.     *nOrgSpeed1 = (int)this->m_transform->m_commonData->orgSpeed[0][0];
  138.     *nOrgSpeed2 = (int)this->m_transform->m_commonData->orgSpeed[1][1];
  139.     *nOrgSpeed3 = (int)this->m_transform->m_commonData->orgSpeed[0][1];
  140.     *nOrgSpeed4 = (int)this->m_transform->m_commonData->orgSpeed[1][3];
  141.     *nOrgSpeed5 = (int)this->m_transform->m_commonData->orgSpeed[0][3];
  142.     *nOrgSpeed6 = (int)this->m_transform->m_commonData->orgSpeed[1][2];
  143.     *nOrgSpeed7 = (int)this->m_transform->m_commonData->orgSpeed[0][2];
  144.   }
  145. }
  146.