Перейти к содержанию
Авторизация  
Rine

Делаем TextDraw денег(руб.)

Рекомендуемые сообщения

Rine

Здравствуйте пользователи форума CR-MP.
И так начнем.

1.Создадим TextDraw самих денег.
Ко всем new добавим:

new Text:GameMoney[2];

А также ко всем #define добавим:

#define callback%0(%1) forward%0(%1); public%0(%1)

Это нужно для того чтобы можно было создавать public без forward.

2.В public OnGameModeInit() добавим:

GameMoney[0] = TextDrawCreate(497.000000, 76.000000, "_");
TextDrawBackgroundColor(GameMoney[0], 255);
TextDrawFont(GameMoney[0], 3);
TextDrawLetterSize(GameMoney[0], 0.589999, 2.499999);
TextDrawColor(GameMoney[0], -1);
TextDrawSetOutline(GameMoney[0], 1);
TextDrawSetProportional(GameMoney[0], 0);
GameMoney[1] = TextDrawCreate(610.470947, 80.833328, "usebox");
TextDrawLetterSize(GameMoney[1], 0.000000, 1.414705);
TextDrawTextSize(GameMoney[1], 495.882537, 0.000000);
TextDrawAlignment(GameMoney[1], 1);
TextDrawColor(GameMoney[1], 0);
TextDrawUseBox(GameMoney[1], true);
TextDrawBoxColor(GameMoney[1], 255);
TextDrawSetShadow(GameMoney[1], 0);
TextDrawSetOutline(GameMoney[1], 0);
TextDrawFont(GameMoney[1], 0);
SetTimer("TimerMoney", 1000, true);//Таймер для обновления TextDraw раз в 1 сек.3.Теперь сделаем чтобы при конекте убирались стандартный 

счетчик денег($):
В public OnPlayerConnect(playerid) добавим:

TextDrawShowForPlayer(playerid, GameMoney[1]);

4.И последнее делаем сам public чтобы обновлять TextDraw.
В любое место добавляем:

callback TimerMoney(i)
{
new newtext[41];
format(newtext, sizeof(newtext), "R%08d", Player[i][pMoney]);
TextDrawSetString(GameMoney[0], newtext);
TextDrawShowForPlayer(i, GameMoney[0]);
}

P.S:Player[pMoney] в callback TimerMoney(i) замените на свое!

cJHcg4wtL20.jpg



Автор: Rine(Я)

Изменено пользователем Rine
  • Like 4

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
ShiGanKa

Пусть он и коппия Exciting ,но попробовать можно. Всё работает. Попробую изменить текстдрав на свой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
#Bazuka

Просто не нужная система,бред полный

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Vlad_Miroshnicov

Дополню, у вас в моде есть в любом случай таймер одна секундный, Что бы не использовать 100-50 раз таймер SetTimer("TimerMoney", 1000, true); проще взять и вставь в конец таймера TimerMoney();

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Kapral
C:\Users\????\Desktop\UGR RP\gamemodes\ugrrp.pwn(4040) : error 029: invalid expression, assumed zero
C:\Users\????\Desktop\UGR RP\gamemodes\ugrrp.pwn(4040) : error 017: undefined symbol "TimerMoney"
C:\Users\????\Desktop\UGR RP\gamemodes\ugrrp.pwn(4040) : error 029: invalid expression, assumed zero
C:\Users\????\Desktop\UGR RP\gamemodes\ugrrp.pwn(4040) : fatal error 107: too many error messages on one line


Compilation aborted.Pawn compiler 3.2.3664     Copyright (c) 1997-2006, ITB CompuPhase




4 Errors.

Как бороться?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Red_Devils

А я чет таймер в этой ситуации не юзаю. Лишняя нагрузка..

  • Like 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Kapral

Ну так что делать то? После вставления:

callback TimerMoney(i)
{
new newtext[41];
format(newtext, sizeof(newtext), "R%08d", Player[i][pMoney]);
TextDrawSetString(GameMoney[0], newtext);
TextDrawShowForPlayer(i, GameMoney[0]);
}

вышли Error'ы

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
hteppl

@Kapral,мы экстрасенсы?Ошибки мб кинете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
СергейРогов

Помогите,исправить вставил этот текст драйв!Скомпилировал и вылезла ошибка и варминг.

FLXT6e7ioIE.jpg

Изменено пользователем СергейРогов

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Stoke163rus

Не отображается текстдрав. Старый текстдар замазан, а новый не показывает.

НО: текстдрав денег показывает справа снизу.

Как исправить, помогите

image.png

 

Изменено пользователем Stoke163rus

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Red_Devils

@Stoke163rus, Геймер ван лав. Переделывай все ТД в моде.

@СергейРогов, Вместо Player используй PlayerInfo

@Kapral, #define callback%0(%1) forward%0(%1); public%0(%1) в начале мода есть?

Изменено пользователем Red_Devils

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Stoke163rus

@Red_Devils, ТД? Что это объясните пожалуйста.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Red_Devils

@Stoke163rus,TextDraw. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Kapral

@Red_Devils, канеш! 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Red_Devils

 

 


format(newtext, sizeof(newtext), "R%08d", Player[pMoney]);

Ты переменную заменил на свою?)

format(newtext, sizeof(newtext), "R%08d", PlayerInfo[pMoney]);

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afdfadgdg

Эта сис-ма античит от взлома денег

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
McFly

Как убрать нули?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
GoldFox2018

Не советую ставить, люди которые зайдут с расширением 800 на 600 у них всё съедет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
MOP TTEX

Господи, у всех будет показываться одно и тоже число. Сделали как глобальный, а не для игрока.
 

new Text:GameMoney[2][MAX_PLAYERS]; 

в OnPlayerConnect
GameMoney[0][playerid] = TextDrawCreate(497.000000, 76.000000, "_");
TextDrawBackgroundColor(GameMoney[0][playerid], 255);
TextDrawFont(GameMoney[0][playerid], 3);
TextDrawLetterSize(GameMoney[0][playerid], 0.589999, 2.499999);
TextDrawColor(GameMoney[0][playerid], -1);
TextDrawSetOutline(GameMoney[0][playerid], 1);
TextDrawSetProportional(GameMoney[0][playerid], 0);
GameMoney[1][playerid] = TextDrawCreate(610.470947, 80.833328, "usebox");
TextDrawLetterSize(GameMoney[1][playerid], 0.000000, 1.414705);
TextDrawTextSize(GameMoney[1][playerid], 495.882537, 0.000000);
TextDrawAlignment(GameMoney[1][playerid], 1);
TextDrawColor(GameMoney[1][playerid], 0);
TextDrawUseBox(GameMoney[1][playerid], true);
TextDrawBoxColor(GameMoney[1][playerid], 255);
TextDrawSetShadow(GameMoney[1][playerid], 0);
TextDrawSetOutline(GameMoney[1][playerid], 0);
TextDrawFont(GameMoney[1][playerid], 0); 
TextDrawShowForPlayer(playerid, GameMoney[1][playerid]);
 
В OnPlayerUpdate

new newtext[41];
format(newtext, sizeof(newtext), "R%08d", Player[i][pMoney]);
TextDrawSetString(GameMoney[0][playerid], newtext);
TextDrawShowForPlayer(i, GameMoney[0][playerid]); 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
NIKRUS

@ShiGanKa, Этот TD использовался на многих серверах. И Энтире, Этернити, Эксайтинг

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.