/eagle - бросить монетку

Description: Готовые команды
Moderator: SJplayer

May
Topic author, Ефрейтор
Ефрейтор
Avatar
May
Topic author, Ефрейтор
Ефрейтор
Reputation: 2
Posts: 22
Joined: 8 May 2013
With us: 6 years 1 month

#1by May » 12 May 2013, 14:40

Всем привет. Нашел на какомто сервере команду на подбрасывание монеты. Решил попробовать сделать копию.

Code: Select all

else if(strcmp(cmd, "/eagle", true) == 0)
{
    new eagle = random(4);
    if(eagle < 2)
    {
        format(string, sizeof(string), "%s подбросил монетку. Выпал орел.", sendername);
        ProxDetector(5.0, playerid, string, COLOR_BLUE, COLOR_BLUE, COLOR_BLUE, COLOR_BLUE, COLOR_BLUE);
        format(string,sizeof(string), "Подбросил монетку. Выпал орел. ");
        SetPlayerChatBubble(playerid,string,COLOR_PURPLE,30.0,10000);
    }
    else
    
{
        format(string, sizeof(string), "%s подбросил монетку. Выпала решка.", sendername);
        ProxDetector(5.0, playerid, string, COLOR_BLUE, COLOR_BLUE, COLOR_BLUE, COLOR_BLUE, COLOR_BLUE);
         format(string,sizeof(string), "Подбросил монетку. Выпала решка.");
        SetPlayerChatBubble(playerid,string,COLOR_PURPLE,30.0,10000);
    }
return 1;
}


Автор - razor2211

! ! !


Clybzotik
Рядовой
Рядовой
Avatar
Clybzotik
Рядовой
Рядовой
Reputation: 8
Posts: 8
Joined: 24 Apr 2018
With us: 1 year 2 months

#2by Clybzotik » 25 Apr 2018, 23:31

Зачем усложнять то? Зачем random(4) ? У монетки то 2 стороны.

Мой вариант:
Spoiler
Стандартный командный процесор.
Spoiler

Code: Select all

if(strcmp(cmdtext, "/eagle", true) == 0)
{
    new string[54];
    GetPlayerName(playerid, string, MAX_PLAYER_NAME);
    switch(random(2)) {
        case 0: format(string, 54, "%s подбросил монетку. Выпал орёл.");
        case 1: format(string, 54, "%s подбросил монетку. Выпала решка.");
    }
    ProxDetector(playerid, 6, 0xFF80FFAA, string);
    return 1;

DC CMD
Spoiler

Code: Select all

CMD:eagle(playerid)
{
    new string[54];
    GetPlayerName(playerid, string, MAX_PLAYER_NAME);
    switch(random(2))
    {
        case 0: format(string, 54, "%s подбросил монетку. Выпал орёл.");
        case 1: format(string, 54, "%s подбросил монетку. Выпала решка.");
    }
    ProxDetector(playerid, 6, 0xFF80FFAA, string);
    return 1;

ProxDetector
Spoiler

Code: Select all

stock ProxDetector(playerid, Float:max_range, color, string[], Float:max_ratio = 1.6)
{
    new Float:pos_x,
        Float:pos_y,
        Float:pos_z,
        Float:range,
        Float:range_ratio,
        Float:range_with_ratio,
        clr_r, clr_g, clr_b,
        Float:color_r, Float:color_g, Float:color_b;
    if (!GetPlayerPos(playerid, pos_x, pos_y, pos_z)) return 0;
    color_r = float(color >> 24 & 0xFF);
    color_g = float(color >> 16 & 0xFF);
    color_b = float(color >> 8 & 0xFF);
    range_with_ratio = max_range * max_ratio;
    #if defined foreach
        foreach (new i : Player) {
    #else
        for (new i = GetPlayerPoolSize(); i != -1; i--) {
    #endif
     if (!IsPlayerStreamedIn(playerid, i)) continue;
      range = GetPlayerDistanceFromPoint(i, pos_x, pos_y, pos_z);
    if (range > max_range) continue;
    range_ratio = (range_with_ratio - range) / range_with_ratio;
    clr_r = floatround(range_ratio * color_r);
    clr_g = floatround(range_ratio * color_g);
    clr_b = floatround(range_ratio * color_b);
    SendClientMessage(i, (color & 0xFF) | (clr_b << 8) | (clr_g << 16) | (clr_r << 24), string);
    }
        SendClientMessage(playerid, color, string);
        return 1;
}]

Eugenuu_Kot
Avatar
Eugenuu_Kot

Мои настройки

#3by Eugenuu_Kot » 14 May 2018, 11:30

C:\Users\NEO\Desktop\Íîâàÿ ïàïêà\gamemodes\new.pwn(268) : warning 213: tag mismatch
C:\Users\NEO\Desktop\Íîâàÿ ïàïêà\gamemodes\new.pwn(275) : warning 213: tag mismatch
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


2 Warnings.

Eugenuu_Kot
Avatar
Eugenuu_Kot

Мои настройки

#4by Eugenuu_Kot » 14 May 2018, 11:34

Eugenuu_Kot wrote:C:\Users\NEO\Desktop\Íîâàÿ ïàïêà\gamemodes\new.pwn(268) : warning 213: tag mismatch
C:\Users\NEO\Desktop\Íîâàÿ ïàïêà\gamemodes\new.pwn(275) : warning 213: tag mismatch
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


2 Warnings.

строка
ProxDetector(5.0, playerid, string, COLOR_BLUE, COLOR_BLUE, COLOR_BLUE, COLOR_BLUE, COLOR_BLUE);

LILUS M
Старшина
Старшина
Avatar
LILUS M
Старшина
Старшина
Reputation: 9
Posts: 131
Joined: 2 May 2013
With us: 6 years 1 month

#5by LILUS » 14 May 2018, 12:46

Почитай что это значит - ID ошибок и предупреждений


Return to “Команды”