Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 18

Тема: Бейсджампинг с бонусом

  1. #1
    Активный пользователь Аватар для
    Регистрация
    22.01.2012
    Адрес
    Череповец
    Сообщений
    252
    Репутация: 32

    Звание: на пути к лучшему

    Сообщение Бейсджампинг с бонусом

    Здравствуйте уважаемые пользователи форума. Сделав карту Бейсджампинг, решил сделать и все действия для неё. Суть такова: Если игрок заходит на пикап первый раз, то прыжок бесплатный. Если долетел до земли не разу не разбившись, то даётся 100$. Понимаю что это всё простенько, но может кому и пригодится. И так начнём:

    Ко всем new
    PHP код:
    new polet;
    new 
    proba[MAX_PLAYERS];
    new 
    probabonus[MAX_PLAYERS
    В public OnPlayerConnect(playerid)
    PHP код:
    proba[playerid] = 0;
    probabonus[playerid] = 0
    В public OnGameModeInit()
    PHP код:
    polet CreatePickup(1310,23,2107.258056,1001.981140,11.046909,-1);
    CreateDynamic3DTextLabel("{00ff00}Бейсджампинг\n{FF6600}Хотите полетать?{FFFFFF}\nЦена прыжка\n50$\n{FF6600}Первый прыжок халявный ",0xFEFEFEFE,-2031.471313,-51.917076,36.471021,40.0); 
    В public OnPlayerDeath(playerid, killerid, reason)
    PHP код:
    probabonus[playerid] = 0;//если разбился то бонус обнуляем 
    В public OnPlayerPickUpPickup(playerid, pickupid)
    PHP код:
       if(pickupid == polet) { 
       if(
    GetPlayerMoney(playerid) < 50) return SendClientMessage(playerid0xFF0000AA,"У Вас не достаточно денег для полёта.");//проверяем есть ли деньги
       
    if(proba[playerid] == 0)//если первый прыжок то...
       
    {
       
    SendClientMessage(playerid0xFF0000AA,"Первый раз бесплатно.");
       
    SetPlayerPos(playerid, -1996.604858, -162.4415431507.211669);//телепорт вверх
       
    proba[playerid] = 1;
       
    probabonus[playerid] = 1;
       }else{
    // иначе
       
    GivePlayerMoney(playerid,-50);//плата за прыжок
       
    probabonus[playerid] = 1;
       
    SetPlayerPos(playerid, -1996.604858, -162.4415431507.211669);}
       return 
    true;
       } 
    В public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    PHP код:
        if (newkeys == KEY_FIRE && GetPlayerWeapon(playerid) == 46  )//если нажата кнопка огонь и у игрока есть парашют
        
    {
            new 
    Float:xFloat:yFloat:z;
            
    GetPlayerPos(playerid,x,y,z);//узнаём координаты игрока
             
    if (probabonus[playerid] == && <= 269.6700//если не разу не разбился и ниже нижней точти коридора полёта
             
    {
                        
    GivePlayerMoney(playerid100);//даём денег
                
    SendClientMessage(playerid0xFF0000AA,"Поздравляем Вы выиграли 100$");//поздравляем
                
    probabonus[playerid] = 0;//обнуляем бонус
            
    }
            return 
    true;
        } 
    ко всем форвардам
    PHP код:
    forward Parashut(); 
    ко всем таймерам в public OnGameModeInit()
    PHP код:
    SetTimer("Parashut",500,true); 
    ко всем public
    PHP код:
    public Parashut() 

    for(new 
    playerid 0;playerid<MAX_PLAYERS;playerid++) 
        { 
       if(
    IsApplyAnimation(playerid"FALL_fall")) 
        { 
            
    GivePlayerWeapon(playerid,46,1); 
        } 

    return 
    true

    stock IsApplyAnimation(playeridanimation[]) 

        new 
    bool:IsApply
        if(
    GetPlayerAnimationIndex(playerid)) 
        { 
            new 
    animlib[32], animname[32]; 
            
    GetAnimationName(GetPlayerAnimationIndex(playerid),animlib,32,animname,32); 
            if(!
    strcmp(animnameanimationtrue)) IsApply=true
            else 
    IsApply=false
        } 
        return 
    IsApply


    Ну вот и всё вроде ни чего не упустил, если будут ошибки то пишите.
    Кто медведям лапы рвёт,
    Зайчиков под дождь суёт,
    Танин мячик бросил в речку,
    Обломал быку дощечку?
    Каждый знает это кто.
    Это – ... Агния Барто!

  2. #2
    SYSTEM Аватар для Games
    Регистрация
    28.06.2010
    Адрес
    Moscow
    Возраст
    30
    Сообщений
    1,468
    Репутация: 478

    Звание: - луч света в тёмном царстве

    Re: Бейсджампинг с бонусом

    Понравилась идея с бейсджампингом в SA:MP.
    Вижу подобное очень редко, возможно потому, что не играю в SA:MP.
    Поэтому меня действительно подобное впечатляет.

    Цитата Сообщение от Дим Дим Посмотреть сообщение

    polet = CreateDynamicPickup(1310,23,2107.258056,1001.981140,11.046909,-1);
    Всё же сделай создание не через стример, ведь его не все используют.
    Кому нужно - уже добавят создание через стример.

    Немного оптимизации:

    Это:

    PHP код:
    if(pickupid == polet) {  
       if(
    GetPlayerMoney(playerid) < 50) return SendClientMessage(playerid0xFF0000AA,"У Вас не достаточно денег для полёта.");//проверяем есть ли деньги 
       
    if(proba[playerid] == 0)//если первый прыжок то... 
       

       
    SendClientMessage(playerid0xFF0000AA,"Первый раз бесплатно."); 
       
    SetPlayerPos(playerid, -1996.604858, -162.4415431507.211669);//телепорт вверх 
       
    proba[playerid] = 1
       
    probabonus[playerid] = 1
       }else{
    // иначе 
       
    GivePlayerMoney(playerid,-50);//плата за прыжок 
       
    probabonus[playerid] = 1
       
    SetPlayerPos(playerid, -1996.604858, -162.4415431507.211669);} 
       return 
    true
       } 
    Заменить на это: (будет логически вернее)

    PHP код:
    if(pickupid == polet)
    {
        if(
    proba[playerid] == 0)//если первый прыжок то... 
        
    {
            
    SendClientMessage(playerid0xFF0000AA,"Первый раз бесплатно."); 
            
    proba[playerid] = 1;
        }
        else
        {
            if(
    GetPlayerMoney(playerid) < 50) return SendClientMessage(playerid0xFF0000AA,"У Вас не достаточно денег для полёта.");//проверяем есть ли деньги 
            
    GivePlayerMoney(playerid,-50);//плата за прыжок 
        
    }
        
    probabonus[playerid] = 1;
        
    SetPlayerPos(playerid, -1996.604858, -162.4415431507.211669);}

    Модератор: Тема одобрена.

    P.s.
    пусто

  3. #3
    Активный пользователь Аватар для Waskez
    Регистрация
    15.07.2012
    Сообщений
    826
    Репутация: 27

    Звание: на пути к лучшему

    Re: Бейсджампинг с бонусом

    Первый раз вообще вижу это в самп!Круто

  4. #4
    Активный пользователь Аватар для
    Регистрация
    22.01.2012
    Адрес
    Череповец
    Сообщений
    252
    Репутация: 32

    Звание: на пути к лучшему

    Re: Бейсджампинг с бонусом

    С оптимизацией согласен. А проверку есть ли деньги и для бесплатного прыжка я специально сделал. Ну надоже хотя бы что нибудь заработать прежде чем получать бонусы. Хотя кому как хочется, так пусть и делают.
    Кто медведям лапы рвёт,
    Зайчиков под дождь суёт,
    Танин мячик бросил в речку,
    Обломал быку дощечку?
    Каждый знает это кто.
    Это – ... Агния Барто!

  5. #5
    Активный пользователь Аватар для
    Регистрация
    22.01.2012
    Адрес
    Череповец
    Сообщений
    252
    Репутация: 32

    Звание: на пути к лучшему

    Re: Бейсджампинг с бонусом

    Вверх
    Кто медведям лапы рвёт,
    Зайчиков под дождь суёт,
    Танин мячик бросил в речку,
    Обломал быку дощечку?
    Каждый знает это кто.
    Это – ... Агния Барто!

  6. #6
    Пользователь
    Регистрация
    09.01.2012
    Возраст
    29
    Сообщений
    86
    Репутация: -4

    Звание: имеет немного плохого в прошлом

    Re: Бейсджампинг с бонусом

    Что-то новенькое

  7. #7
    Активный пользователь Аватар для sLexy
    Регистрация
    04.05.2012
    Адрес
    Belarus
    Возраст
    28
    Сообщений
    2
    Репутация: 50

    Звание: скоро придёт к известности

    Re: Бейсджампинг с бонусом

    Хорошая идея

  8. #8
    Пользователь Аватар для Nike
    Регистрация
    21.08.2012
    Сообщений
    39
    Репутация: 1

    Звание: пока не определено

    Re: Бейсджампинг с бонусом

    Спасибо, пригодилось

  9. #9
    Активный пользователь
    Регистрация
    12.09.2012
    Адрес
    Россия,кинешма
    Сообщений
    27
    Репутация: 50

    Звание: скоро придёт к известности

    Re: Бейсджампинг с бонусом

    супер ваще как смогу ставить + так сразу поставлю
    Делаю сервер TDM с другом,
    Готовность:
    ▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐▐ 14%

  10. #10
    Активный пользователь Аватар для dikekike
    Регистрация
    05.10.2010
    Адрес
    C:\WINDOWS\system32
    Возраст
    26
    Сообщений
    1,721
    Репутация: 116

    Звание: скоро придёт к известности

    Re: Бейсджампинг с бонусом

    Лучше тему назвал бы Бейсджампинг с шлюхами и блекджеком



Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  1. Бейсджампинг
    от Дим Дим в разделе Карты
    Ответов: 10
    Последнее сообщение: 06.04.2015, 13:30
  2. "Парашют с бонусом"
    от MoRgAn в разделе Вопросы по скриптингу
    Ответов: 3
    Последнее сообщение: 11.03.2011, 17:35

Ваши права

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