Написание плагинов

Palonez

бб братки
Сообщения
3,035
Реакции
1,837
Привет всем, нужен плагин на необычные оружья которые будут падать с неба как дроп. Например оружие лазеры, огнеметы, гранатометы у которых будет большой урон

Всем привет, есть значение: g_iItemsValues[iCaseID][iItemID].sName, подскажите пожалуйста как получить его предыдущее значение (То что только что прошло) и следующее (То что будет следующее). Значение берется с конфига и по порядку выводится
Код:
Action ProccesItem(Handle hTimer, ArrayList hArray)
{
    int iClient, iCaseID, iEntity;

    iEntity = hArray.Get(0);

    for (int i = 1; i < MaxClients; i++)
    {
        if (IsClientInGame(i) && iTrashData[0][i] == iEntity)
        {
            iClient = i;
            iCaseID = iTrashData[1][i];
        }
    }

    if (iClient)
    {
        int iItemID = hArray.Get(g_iCounter[iClient]);
        hArray.Erase(g_iCounter[iClient]);


        if (2 > g_iCounter[iClient])
        {
            g_iPlayerInfo[iCaseID][iClient].iCasesAmount--;
            if (g_iCasesValues[iCaseID].bNeedKey)
            {
                !g_bKeysType[iClient] ? g_iUniverKeysAmount[iClient]--:g_iPlayerInfo[iCaseID][iClient].iKeysAmount--;
            }
            g_iPlayerInfo[iCaseID][iClient].iClientCaseCD = g_iCasesValues[iCaseID].iCaseCD+GetTime();

            if (iTrashData[2][iClient] == iCaseID && iTrashData[3][iClient] != -1)
            {
                iItemID = iTrashData[3][iClient];
                iTrashData[2][iClient] = iTrashData[3][iClient] = -1;
            }

            iTrashData[0][iClient] = iTrashData[1][iClient] = 0;
            g_bIsOpening[iClient] = false;

            OnClientOpenCase(iClient, iCaseID, g_iItemsValues[iCaseID][iItemID].sTrigger, g_iItemsValues[iCaseID][iItemID].sOutCome);
            SaveData(iClient);
           

            if (g_bFreezePlayer)
            {
                SetEntityMoveType(iClient, MOVETYPE_WALK);
            }

            if (g_bGodMode)
            {
                SetEntProp(iClient, Prop_Data, "m_takedamage", 2, 1);
            }
           
            else
            {
                PrintHintText(iClient, "▷ ► %s ◄ ◁", g_iItemsValues[iCaseID][iItemID].sName);
            }

            EmitSoundToClient(iClient, g_iRarityValues[g_iItemsValues[iCaseID][iItemID].iRarityID].sRaritySounds, _, 0, _, _, fVolume);

            if (g_bUserMsg) PerformFade(iClient, g_iRarityValues[g_iItemsValues[iCaseID][iItemID].iRarityID].iRGBA);

            RemoveEntityEx(EntRefToEntIndex(iEntity), "FadeAndKill");

            if (g_bChatAll)
            {
                char sCM[256], sOld[256];
                FormatEx(sCM, sizeof(sCM), "%t", "CM_Player_Dropped_Item", iClient, g_iRarityValues[g_iItemsValues[iCaseID][iItemID].iRarityID].sRarityChatColors_CM, g_iItemsValues[iCaseID][iItemID].sName, g_iCasesValues[iCaseID].sCaseName);
                MC_PrintToChatAll("%s %s", sChatColors_CM, sCM);
               
                FormatEx(sOld, sizeof(sOld), "%t", "Player_Dropped_Item", iClient, g_iItemsValues[iCaseID][iItemID].sName, g_iCasesValues[iCaseID].sCaseName);
                C_PrintToChatAll("%s %s", sChatColors, sOld);
            }
           
            delete hArray;
        }
        else
        {
            EmitSoundToClient(iClient, sSoundsScroll, _, 0, _, _, fVolume);
           
            PrintHintText(iClient, "▷ ► %s ◄ ◁", g_iItemsValues[iCaseID][iItemID].sName);
            CreateTimer(g_iCounter[iClient] < 3 ? 0.7:0.3, ProccesItem, hArray);
        }
   
        g_iCounter[iClient]--;
    }
}
С какого конфига?
 

7pElllHuK

Участник
Сообщения
1,416
Реакции
465
С какого конфига?
С него
Сообщения автоматически склеены:

Должно получится как-то так:
1679133818286.png

Если бесплатно помочь не можете, то готов заплатить
 

Вложения

  • cases.ini
    11.5 КБ · Просмотры: 3

Frook

Участник
Сообщения
84
Реакции
2
Всем привет, надо русифицировать плагин ДМ имено Guns Menu.
Вместо
New Weapons
Same Weapons
Random Weapons
Сделать перевод даных менюшек на русский язык еще к этому добавить Сохранить данные оружия типо того, кто может помочь
 

Вложения

  • csgo-deathmatch-master (2).zip
    262.5 КБ · Просмотры: 1

Nekro

Терра инкогнита
Сообщения
4,025
Реакции
2,260
Всем привет, надо русифицировать плагин ДМ имено Guns Menu.
Вместо
New Weapons
Same Weapons
Random Weapons
Сделать перевод даных менюшек на русский язык еще к этому добавить Сохранить данные оружия типо того, кто может помочь
Задание принято
 

Туник

Участник
Сообщения
1,281
Реакции
263
Всем привет, надо русифицировать плагин ДМ имено Guns Menu.
Вместо
New Weapons
Same Weapons
Random Weapons
Сделать перевод даных менюшек на русский язык еще к этому добавить Сохранить данные оружия типо того, кто может помочь
Проще другой плагин использовать
 

MagoG

Хочу быть как truyn
Сообщения
896
Реакции
608
Проще другой плагин использовать
Русифицировать не так уж и трудно, посидев 30 минуток в яндекс переводчике, как минимум :)
1679224914191.png

И как я вижу, русский там есть. Делайте правильно настройку сервера....
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
Подскажите функцию для конвертации HEX обратно в float.

К примеру:
число 1.15 в HEX это 0x3F933333, но при попытке StringToFloat("3F933333") возвращаеться 1066611507, а не 1.15.
В StringToInt() есть второй аргумент, который указывает разрядность, но в StringToFloat() такого нету.

Если сделать так, то ввыведиться почти то число, но если это число перевести обратно в HEX, то выйдет тот-же HEX 🤔
C-подобный:
PrintToServer("%1.3f", StringToInt("3F933333", 16));
PrintToServer("%1.3f", view_as<float>(StringToInt("3F933333", 16)));

1679238657200.png
 
Последнее редактирование:

Vit_ amin

Добрая душа
Сообщения
1,504
Реакции
660
Подскажите функцию для конвертации HEX обратно в float.

К примеру:
число 15.5 в HEX это 0x41700000, но при попытке StringToFloat("41700000") возвращаеться 41700000.0, а не 15.5.
В StringToInt() есть второй аргумент, который указывает разрядность, но в StringToFloat() такого нету.
Гуглите стандарт IEEE 754 и по его алгоритму сможете написать конвертер
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,520
Реакции
4,979
Если сделать так, то ввыведиться почти то число, но если это число перевести обратно в HEX, то выйдет тот-же HEX 🤔
А если сделать вот так?
C-подобный:
PrintToServer("%f", view_as<float>(StringToInt("3F933333", 16)));
PrintToServer("%x", view_as<int>(1.15));
PrintToServer("%f", 1.15);
Сообщения автоматически склеены:

Результат:
C-подобный:
1.149999
3f933333
1.149999
 

iLoco

Пишу плагины за печеньки 🍪🍪🍪
Сообщения
2,265
Реакции
1,323
А если сделать вот так?
C-подобный:
PrintToServer("%f", view_as<float>(StringToInt("3F933333", 16)));
PrintToServer("%x", view_as<int>(1.15));
PrintToServer("%f", 1.15);
Сообщения автоматически склеены:

Результат:
C-подобный:
1.149999
3f933333
1.149999
1679239122454.png

Я думаю это норма что там число 9 в бессконечность уходит.


Да, это не проблема что уходит в бессконечность, если при последующей конвертации в HEX число такое-же, то пофигу
1679239467086.png
 
Последнее редактирование:

-=|УЧЕНИК|=-

вся жизнь,сплошной цирк.
Сообщения
876
Реакции
212
Привет всем!
Кому не сложно,накидайте пожалуйста простенький плагин.
Чтоб при команде !armur выдавало 100 брони.
Заранее спасибо.
 

Palonez

бб братки
Сообщения
3,035
Реакции
1,837
Установить 100
C-подобный:
public void OnPluginStart()
{
    RegConsoleCmd("sm_armur", Armor);
}

public Action Armor(int client, int args)
{
    SetEntProp(client, Prop_Send, "m_ArmorValue", 100);
    return Plugin_Handled;
}

Прибавить 100
C-подобный:
public void OnPluginStart()
{
    RegConsoleCmd("sm_armur", Armor);
}

public Action Armor(int client, int args)
{
    SetEntProp(client, Prop_Send, "m_ArmorValue", GetEntProp(client, Prop_Data, "m_ArmorValue")+100);
    return Plugin_Handled;
}
 
Последнее редактирование:

serg

Участник
Сообщения
72
Реакции
2
Всем привет. Кто может переписать function switch_weapon(weapon) в html5. Что бы во всех браузерах работало? Оплату гарантирую!
 

Вложения

  • playerinfo_weapons.php
    19.3 КБ · Просмотры: 8
Сверху Снизу