Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 4 из 4 ПерваяПервая ... 2 3 4
Показано с 31 по 31 из 31
  1. #31
    Аватар для Duck_Leo
    Пользователь

    Статус
    Оффлайн
    Регистрация
    06.03.2017
    Адрес
    Россия
    Сообщений
    15
    Репутация:
    0 ±
    Привет. Например я хотел бы использовать самповскую родную функцию GetPlayerMoney в плагине. Не хотелось бы использовать GDK и др.
    Как это пытаюсь сделать:
    1. // C++
    2.  
    3. int __GetPlayerMoney(int playerid, AMX *amx)
    4. {
    5. int amx_index;
    6. cell amx_retval = 0;
    7.  
    8. if (!amx_FindNative(amx, "GetPlayerMoney", &amx_index))
    9. {
    10. amx_Push(amx, playerid);
    11. amx_Exec(amx, &amx_retval, amx_index);
    12. }
    13. return (int)amx_retval;
    14. }
    15.  
    16. // native PLUGIN_GetPlayerMoney(playerid);
    17. static cell AMX_NATIVE_CALL n_PLUGIN_GetPlayerMoney(AMX *amx, cell *params)
    18. {
    19. return __GetPlayerMoney(params[1], amx);
    20. }
    21.  
    22. AMX_NATIVE_INFO NATIVES_LIST[] =
    23. {
    24. {"PLUGIN_GetPlayerMoney", n_PLUGIN_GetPlayerMoney},
    25. { 0, 0 }
    26. };


    1. // Pawn
    2.  
    3. native PLUGIN_GetPlayerMoney(playerid);
    4.  
    5. public OnPlayerSpawn(playerid)
    6. {
    7. new money = PLUGIN_GetPlayerMoney(playerid);
    8. printf("money = %d", money);
    9. return 1;
    10. }
    11.  
    12. forward CallGetPlayerMoney();
    13. public CallGetPlayerMoney()
    14. {
    15. }

    В итоге в printfmoney = 1. А по задумке ф-ия должна вернуть текущие деньги игрока.
    Что я делаю не так?
    Последний раз редактировалось Duck_Leo; 24.04.2021 в 15:37.

 

 
Страница 4 из 4 ПерваяПервая ... 2 3 4

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •