10 posts in this topic

Данная команда добавит создание описания своего персонажа. Хорошо подойдет для RP проектов.

Спойлер

2SwV8U8.jpg

Рис 1. Демонстрация /pame

Ко всем new:
 

new Text3D:pame_text[MAX_PLAYERS] = {Text3D:-1, ...};

Ко всем командам: 

Спойлер

CMD:pame(playerid, params[])
{
     if(isnull(params)) 
         return SendClientMessage(playerid, -1, "Введите: /pame [ описание ]");

    if(pame_text[playerid] != Text3D:-1)
         return SendClientMessage(playerid, -1, "У вас уже стоит описание. Для удаление используйте: /dellpame");
     
     pame_text[playerid] = Create3DTextLabel(params, 0xFFFFFFDD, 0.0, 0.0, 12000.0, 3, 0, 1);
     Attach3DTextLabelToPlayer(pame_text[playerid], playerid, 0.0, 0.0, -0.8);

     new string[MAX_CHATBUBBLE_LENGTH+1];
     format(string, sizeof(string), "Вы создали описание персонажа: %s", params); 
     SendClientMessage(playerid, -1, string);
     return 1;
} 


CMD:dellpame(playerid, params[])
{
    if(pame_text[playerid] == Text3D:-1)
        return SendClientMessage(playerid, -1, "Вы не создавали описание персонажа. Используйте: /pame [ описание ]"); // Проверка на то, создан ли у игрока описание или нет.
    
    SendClientMessage(playerid, -1, "Вы удалили описание своего персонажа");
    Delete3DTextLabel(pame_text[playerid]); 
    pame_text[playerid] = Text3D:-1;
    return 1;
} 

 

В OnPlayerDisconnect:
 

if(pame_text[playerid] != Text3D:-1)
{
    Delete3DTextLabel(pame_text[playerid]);
    pame_text[playerid] = Text3D:-1;
}  

Автор: DeimoS

Share this post


Link to post
Share on other sites

Система Топ, ранее не видел такую, взял к себе.

Share this post


Link to post
Share on other sites

Системка топ4ик, одобряю.

Share this post


Link to post
Share on other sites

Интересная система, писал подобное для одного из модов.

 

Определенно респект создателю темы.

Правда саму систему можно было сделать легче.

Share this post


Link to post
Share on other sites

Сохроняется? Или в бд нужно будет прописать?

Share this post


Link to post
Share on other sites

if(pame_text[playerid] != Text3D:-1)

 

pame_text[playerid] = Create3DTextLabel(params, 0xFFFFFFFF, 0.0, 0.0, 12000.0, 3, 0, 1);

 

// loose indentification warning)

Share this post


Link to post
Share on other sites
В 06.05.2019 в 18:14, expected сказал:

if(pame_text[playerid] != Text3D:-1)

 

pame_text[playerid] = Create3DTextLabel(params, 0xFFFFFFFF, 0.0, 0.0, 12000.0, 3, 0, 1);

 

// loose indentification warning)

выровняй...

Share this post


Link to post
Share on other sites

Как сделать сохранение? И как сделать отображение когда игрок заходит в игру?

Share this post


Link to post
Share on other sites

@SuperHacker228 для этого нужно использовать стандартные функции, которые вызываются, когда происходят какие-н. действия, например, OnPlayerConnect

Share this post


Link to post
Share on other sites

Добавил к себе, лови +

Заметка от Jawn , создано

Не увидел Вашего плюсика.

Заметка от Jawn , создано

2.17. Запрещено флудить, оффтопить, заниматься флеймом. 

Устное предупреждение.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Dworkin
      By Dworkin
      Привет. Мне тяжело дается понимание строк в pawn из за не динамических массивов.
      #include enum pInfo { pRangName[25] } new players[MAX_PLAYERS][pInfo]; new string[20]; main() { format(string, sizeof(string), "Салага"); printf(string); players[0][pRangName] = string; } выдает ошибку "error 047: array sizes do not match, or destination array is too small" на строку "players[0][pRangName] = string;"
      Я понимаю что в ошибке говорится что размер не совпадает, но не могу понять как это сделать в павне