Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Pytanie] Zmiana bonusów


Rekomendowane odpowiedzi

Opublikowano

fishing::UseFish

 

 

 

int __cdecl fishing::UseFish(int a1, int a2)
{
  int v2; // eax@1
  int v3; // edx@1
  int v4; // eax@3
  int v5; // edi@3
  int result; // eax@4
  int v7; // eax@6
  unsigned int v8; // eax@8
  char *v9; // eax@13
  char *v10; // eax@16
  char *v11; // eax@17
  char v12; // [sp+Ch] [bp-2Ch]@6
  int v13; // [sp+24h] [bp-14h]@6
  int v14; // [sp+28h] [bp-10h]@1

  v14 = *(_DWORD *)_stack_chk_guard__FBSD_1_0;
  v2 = 0;
  v3 = *(_DWORD *)(a2 + 68);
  if ( v3 )
    v2 = *(_DWORD *)v3;
  v4 = v2 - *(_DWORD *)&fishing::fish_info[368];
  v5 = v4 + 2;
  if ( (unsigned int)v4 <= 0x22 )
  {
    v13 = number_ex(1, 10000, (int)"fishing.cpp", 760);
    v7 = CItem::GetCount(a2);
    CItem::SetCount(a2, v7 - 1);
    if ( v13 > 4000 )
    {
      CHARACTER::AutoGiveItem(a1, *(_DWORD *)&fishing::fish_info[152 * v5 + 68], 1, -1, 1);
    }
    else
    {
      if ( v13 > 2000 )
      {
        CHARACTER::AutoGiveItem(a1, 27799, 1, -1, 1);
      }
      else
      {
        v8 = *(_DWORD *)(std::lower_bound<int___int>(
                           fishing::UseFish_CHARACTER___CItem___:_acc_prob,
                           &_gthread_active_22,
                           &v13)
                       - (_DWORD)fishing::UseFish_CHARACTER___CItem___:_acc_prob
                       + 152 * v5
                       + 138898832);
        if ( v8 <= 4 )
        {
          switch ( v8 )
          {
            case 4u:
              v9 = (char *)locale_find((unsigned int)&unk_834AABC);
              CHARACTER::ChatPacket(a1, 1, v9, v12);
              CHARACTER::AutoGiveItem(a1, 27801, 1, -1, 1);
              break;
            case 1u:
              if ( !(unsigned __int8)LC_IsSingapore() || number_ex(0, 2, (int)"fishing.cpp", 791) == 2 )
              {
                v10 = (char *)locale_find((unsigned int)"¦Ŕ -ˬí-ş +Â---í -¬¬ďŻL+¤+-.");
                CHARACTER::ChatPacket(a1, 1, v10, v12);
                CHARACTER::AutoGiveItem(a1, 27987, 1, -1, 1);
              }
              break;
            case 0u:
            case 2u:
            case 3u:
              v11 = (char *)locale_find((unsigned int)&unk_834AA9C);
              CHARACTER::ChatPacket(a1, 1, v11, v12);
              break;
            default:
              goto LABEL_9;
          }
        }
        else
        {
LABEL_9:
          CHARACTER::AutoGiveItem(a1, v8, 1, -1, 1);
        }
      }
    }
  }
  result = *(_DWORD *)_stack_chk_guard__FBSD_1_0 ^ v14;
  if ( *(_DWORD *)_stack_chk_guard__FBSD_1_0 != v14 )
    __stack_chk_fail();
  return result;
}

 

 

 

 

umarł

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...