Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 9 из 9
  1. #1
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,360
    Репутация:
    113 ±

    GetPlayerWeaponData

    Как мне правильно без лишней пыли посчитать все Ammo во всех слотах GetPlayerWeaponData(playerid,0,Gun,Ammo); через цикл for
    Слотов всего 13(0-12)..

  2. #2
    Аватар для untonyst
    Младший сержант

    Статус
    Онлайн
    Регистрация
    15.03.2015
    Адрес
    Slobodskoy
    Сообщений
    663
    Репутация:
    234 ±
    Попробуйте так.

    PHP код:
    new 
        
    GunAmmoCountAmmo;
        
    for (new 
    i<= 12i++)
    {
        
    GetPlayerWeaponData(playeridiGunAmmo);
        
    CountAmmo += Ammo;

    Младший сержант Стяжкин | ЧСВ группа в ВКонтакте NEW

  3. #3
    Аватар для wAx
    ¯\_(ツ)_/¯

    Статус
    Оффлайн
    Регистрация
    13.12.2013
    Сообщений
    375
    Репутация:
    144 ±
    Цитата Сообщение от Untonyst Посмотреть сообщение
    Попробуйте так.

    PHP код:
    new 
        
    GunAmmoCountAmmo;
        
    for (new 
    i<= 12i++)
    {
        
    GetPlayerWeaponData(playeridiGunAmmo);
        
    CountAmmo += Ammo;

    а ведь можно пропустить параметр weapon, за ненадобностью:?

  4. #4
    Аватар для untonyst
    Младший сержант

    Статус
    Онлайн
    Регистрация
    15.03.2015
    Адрес
    Slobodskoy
    Сообщений
    663
    Репутация:
    234 ±
    Цитата Сообщение от wAx Посмотреть сообщение
    а ведь можно пропустить параметр weapon, за ненадобностью:?
    Неа, этот параметр есть ссылка и проигнорировать его нельзя.
    Младший сержант Стяжкин | ЧСВ группа в ВКонтакте NEW

  5. #5
    Аватар для McLuhan
    Пользователь

    Статус
    Оффлайн
    Регистрация
    29.01.2016
    Сообщений
    4
    Репутация:
    0 ±
    Цитата Сообщение от wAx Посмотреть сообщение
    а ведь можно пропустить параметр weapon, за ненадобностью:?
    PHP код:
        new summaAmmo 0;
        for(new 
    sl 0ammo 0sl 13sl++)
        {
            
    GetPlayerWeaponData(playeridslammoammo);
            
    summaAmmo += ammo;
        }
        
    printf("Summa ammo: %d."summaAmmo); 

  6. #6
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,360
    Репутация:
    113 ±
    PHP код:
    for(new sl 0ammo 0sl 13sl++) 
    А вот тут часом не произойдёт так что при каждом выполнении цикла патроны будут обнуляться,
    то есть к примеру ammo первого слота равно 4 а потом начинает второй считать и обнуляет и так с каждым слотом, или как оно поведёт себя?
    ______
    GetPlayerWeaponData(playerid, sl, ammo, ammo);
    А так разве можно? одной переменной в двух значениях юзать?
    Последний раз редактировалось vovandolg; 30.01.2016 в 03:33.

  7. #7
    Аватар для wAx
    ¯\_(ツ)_/¯

    Статус
    Оффлайн
    Регистрация
    13.12.2013
    Сообщений
    375
    Репутация:
    144 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    PHP код:
    for(new sl 0ammo 0sl 13sl++) 
    А вот тут часом не произойдёт так что при каждом выполнении цикла патроны будут обнуляться,
    то есть к примеру ammo первого слота равно 4 а потом начинает второй считать и обнуляет и так с каждым слотом, или как оно поведёт себя?
    ну sl ведь не обнуляется...

    Цитата Сообщение от vovandolg Посмотреть сообщение
    GetPlayerWeaponData(playerid, sl, ammo, ammo);
    А так разве можно? одной переменной в двух значениях юзать?
    да, сначала ammo используется для получения weapon, а после значение перезаписывается на значение ammo, в конце концов у нас ammo будет равняться кол-ву патронов.

  8. Пользователь сказал cпасибо:
    vovandolg (30.01.2016)
  9. #8
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    PHP код:
    for(new sl 0ammo 0sl 13sl++) 
    А вот тут часом не произойдёт так что при каждом выполнении цикла патроны будут обнуляться,
    то есть к примеру ammo первого слота равно 4 а потом начинает второй считать и обнуляет и так с каждым слотом, или как оно поведёт себя?

    Ну а теперь давайте окунёмся в то, что каждый должен изучит ещё на стадии ознакомления с понятием "Что такое Pawn?":
    PHP код:
    for(Оператор_инициализацияУсловиеПоститерационная_команда
    Оператор_инициализация - это тот код, который выполнится при старте цикла. Здесь записывают объявление переменных или же задают этим переменным стартовые значения, если переменные были объявлены ранее.

    Условие - это условия выполнения цикла. То бишь пока условие не выполнится, цикл будет продолжать выполнять код в своём теле (ели оставить пустым, то цикл будет бесконечным).

    Поститерационная_команда - это тот код, который будет выполняться после выполнения тела цикла (в конце каждой итерации). Здесь записывают действия с переменными, значения которых сравниваются в условии.

    И работа цикла будет выглядеть, примерно, так:

    PHP код:
    Оператор_инициализация 

    Итерация №1
    :
    Условие
    {Тело_Цикла}
    Поститерационная_команда

    Итерация №2
    :
    Условие
    {Тело_Цикла}
    Поститерационная_команда

    Итерация №3
    :
    Условие
    {Тело_Цикла}
    Поститерационная_команда

    Итерация №4
    :
    Условие
    {Тело_Цикла}
    Поститерационная_команда

    Итерация №5
    :
    Условие
    {Тело_Цикла}
    Поститерационная_команда

    ...//Пока условие не будет выполнено

    Итерация №over900:
    Условие//Условие выполнено
    break;//Остановка цикла 
    Из этого всего должно стать понятно, что переменная ammo обнуляется только при старте цикла и больше её мы не обнуляем
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  10. 2 пользователя(ей) сказали cпасибо:
    BadPawn (30.01.2016)vovandolg (30.01.2016)
  11. #9
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,360
    Репутация:
    113 ±
    Тему можно закрывать, оба варианта гуд) Спасибо.
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

 

 

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

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

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

Ваши права

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