 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Изменяем внешний вид экрана
| |
| raen | Дата: Четверг, 20.03.2008, 07:53 | Сообщение # 1 |
|
Уважаемый человек
Группа:
Продвинутые
Сообщений: 785
Награды: 25
Город: PакунСити
Репутация: 154
Замечания: 20%
Статус: 
| Плз подскажите как на экран скажем в правом нижнем углу сделать чтобы выводился (Textdraw) счёт который находится в банке к примеру: БАНК: сумма. Чтобы шла постоянная синхронизация со счётом в банке, чтобы можно было отслеживать изменения. За ранее спс
- Social Roleplay - ucp.gtamir.ru - 77.220.182.241:7777
|
| |
|
|
| OKStyle™ | Дата: Четверг, 20.03.2008, 08:41 | Сообщение # 2 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2444
Награды: 16
Город: Оренбург
Репутация: 1174
Замечания: 40%
Статус: 
| Делаешь таймер с временем обновлениея в секунду. В нем надо задать анализирование суммы в банке (banksumm) (чтение переменной) и вывод: Code new string[256]; banksumm++; format(string, sizeof(string), " BANK: %d.", banksumm); GameTextForPlayer(~r~,string); Возможно так. Пиши что не получится.
Да потому что когда человек делает на заказ он не старается. © kRiSyo Кланяимся нофаму королю анимаций =))))))) © Manusya В MTA - для вас все багоюзеры. Не юзают там +с только EFO и ACF. © SeWeR
|
| |
|
|
| raen | Дата: Четверг, 20.03.2008, 12:18 | Сообщение # 3 |
|
Уважаемый человек
Группа:
Продвинутые
Сообщений: 785
Награды: 25
Город: PакунСити
Репутация: 154
Замечания: 20%
Статус: 
| Quote (okstyle) Делаешь таймер с временем обновлениея в секунду C этих слов уже не понятно... Плз можешь в виде кода написать, а то я сам намудрю т.к. мои познания не такие уж хорошие...
- Social Roleplay - ucp.gtamir.ru - 77.220.182.241:7777
|
| |
|
|
| rembo | Дата: Четверг, 20.03.2008, 17:36 | Сообщение # 4 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 386
Награды: 2
Город: Балахта
Репутация: 69
Замечания: 0%
Статус: 
| Мда, интересно, кто обьяснит ???????
========================================== Я неговорю что я красвец - типо справился, и сейчас ничем не убиваюсь. ==========================================
|
| |
|
|
| LuxurY | Дата: Четверг, 20.03.2008, 17:52 | Сообщение # 5 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 281
Награды: 1
Город: OZ
Репутация: 45
Замечания: 0%
Статус: 
| new str[32]; format(str,sizeof(str),"~y~BANK: ~g~%d",bank[playerid]); а дальше я тебе рекомендую использовать Ingame TextDraw Editor by Zamaroht
www.gtascript.ru admin www.gtascript.ru - профессиональный скриптинг SA-MP, MTA
|
| |
|
|
| raen | Дата: Пятница, 21.03.2008, 14:47 | Сообщение # 6 |
|
Уважаемый человек
Группа:
Продвинутые
Сообщений: 785
Награды: 25
Город: PакунСити
Репутация: 154
Замечания: 20%
Статус: 
| Когда ахожу в здание TextDraw начинает мигать, а когда выхожу из здания то он вообще пропадает, как это можно поправить ? Добавлено (21.03.2008, 14:47) --------------------------------------------- LuxurY когда я ставлю свои TextDrawы на таймер вот код: SetTimer("writeBank", 2000, 1); SetTimer("writeLevel", 3000, 1); SetTimer("writeXp", 1000, 1); То после определённого кол-ва времени таймеры почему то останавливаются и не идёт обновление TextDrawов вообще, как это можно поправить ??? Плз помоги !!! За ранее спасибо !
- Social Roleplay - ucp.gtamir.ru - 77.220.182.241:7777
|
| |
|
|
| rembo | Дата: Пятница, 21.03.2008, 16:04 | Сообщение # 7 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 386
Награды: 2
Город: Балахта
Репутация: 69
Замечания: 0%
Статус: 
| Или лучше код полностью выложите, где будет показываться Лвл, ХП, деньги, броня, и Ещё что нить плиз  Добавлено (21.03.2008, 16:04) --------------------------------------------- А ещё лучше скрипт 
========================================== Я неговорю что я красвец - типо справился, и сейчас ничем не убиваюсь. ==========================================
|
| |
|
|
| LuxurY | Дата: Пятница, 21.03.2008, 16:08 | Сообщение # 8 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 281
Награды: 1
Город: OZ
Репутация: 45
Замечания: 0%
Статус: 
| попробуй скачать TYS http://forum.sa-mp.com/index.php?topic=34425.0 и отследи изменение количества текстдровов. могу предположить что ты их не удаляешь и процесс виснет на кол-ве 1024
www.gtascript.ru admin www.gtascript.ru - профессиональный скриптинг SA-MP, MTA
|
| |
|
|
| raen | Дата: Суббота, 22.03.2008, 06:00 | Сообщение # 9 |
|
Уважаемый человек
Группа:
Продвинутые
Сообщений: 785
Награды: 25
Город: PакунСити
Репутация: 154
Замечания: 20%
Статус: 
| У меня стоит 3 текстдрава, хотя твой TYS показывает что только 2 ?! может прога глючит ? Вот мой код: public OnGameModeInit() { SetTimer("writeBank", 2000, 1); SetTimer("writeLevel", 3000, 1); SetTimer("writeXp", 1000, 1); return 1; } public writeBank() { for(new i=0; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { new str[32]; format(str,sizeof(str)," 6AHK:%d",Player[i][Bank]); TextDrawShowForPlayer(i,Textdraw3); Textdraw3 = TextDrawCreate(212.000000,21.000000,str); TextDrawAlignment(Textdraw3,0); TextDrawBackgroundColor(Textdraw3,0x000000ff); TextDrawFont(Textdraw3,2); TextDrawLetterSize(Textdraw3,0.299999,1.300000); TextDrawColor(Textdraw3,0x00ff00cc); TextDrawSetOutline(Textdraw3,1); TextDrawSetProportional(Textdraw3,1); TextDrawSetShadow(Textdraw3,1); } } } public writeLevel() { for(new i=0; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { new str[32]; format(str,sizeof(str),"level:%d",Player[i][Level]); TextDrawShowForPlayer(i,Textdraw4); Textdraw4 = TextDrawCreate(321.000000,22.000000,str); TextDrawAlignment(Textdraw4,0); TextDrawBackgroundColor(Textdraw4,0x000000ff); TextDrawFont(Textdraw4,2); TextDrawLetterSize(Textdraw4,0.299999,1.000000); TextDrawColor(Textdraw4,0xffffffff); TextDrawSetOutline(Textdraw4,1); TextDrawSetProportional(Textdraw4,1); TextDrawSetShadow(Textdraw4,1); } } } public writeXp() { for(new i=0; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { new str[32]; format(str,sizeof(str),"XP:%d",Player[i][XP]); TextDrawShowForPlayer(i,Textdraw5); Textdraw5 = TextDrawCreate(321.000000,21.000000,str); TextDrawAlignment(Textdraw5,0); TextDrawBackgroundColor(Textdraw5,0x000000ff); TextDrawFont(Textdraw5,1); TextDrawLetterSize(Textdraw5,0.299999,0.899999); TextDrawColor(Textdraw5,0xffff00ff); TextDrawSetOutline(Textdraw5,1); TextDrawSetProportional(Textdraw5,1); } } } Фун-ции форварды и new я не выкладывал. Вообщем вроде код всё правильный, но только 2 проблемы: 1) В здании текстдрав пропадает 2) Через некоторое время порестаёт обравлятся и превращается в обычный текст.(такое чуство как будто таймеры прекращают работать) Добавлено (22.03.2008, 06:00) --------------------------------------------- Незнаю даст тебе это что нибудь или нет, но вот смотри: Когда я захожу под админом, пишу команду на хр и даю себе 100хр делаю это 3 раза после каждого смотрю на текстдрав- он обновляется т.е. всё работает правильно, но когдя я даю себе 100хр 4 раз, то всё после 4 раза текстдрав уже не обновляется и значение остаётся прежним, это закономерность, в чём может быть дело ???
- Social Roleplay - ucp.gtamir.ru - 77.220.182.241:7777
|
| |
|
|
| EKup | Дата: Суббота, 22.03.2008, 10:38 | Сообщение # 10 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 75
Награды: 2
Город: Ульяновск
Репутация: 10
Замечания: 0%
Статус: 
| Я бы сделал что то вроде: Code new Text:tds3[MAX_PLAYERS]; new Text:tds4[MAX_PLAYERS]; new Text:tds5[MAX_PLAYERS];
public OnGameModeInit() { SetTimer("writeBank", 2000, 1); SetTimer("writeLevel", 3000, 1); SetTimer("writeXp", 1000, 1); return 1; }
public OnPlayerConnect(playerid) { new str[32]; // format(str,sizeof(str)," 6AHK:%d",Player[playerid][Bank]); tds3[playerid] = TextDrawCreate(212.000000,21.000000,str); TextDrawAlignment(tds3[playerid],0); TextDrawBackgroundColor(tds3[playerid],0x000000ff); TextDrawFont(tds3[playerid],2); TextDrawLetterSize(tds3[playerid],0.299999,1.300000); TextDrawColor(tds3[playerid],0x00ff00cc); TextDrawSetOutline(tds3[playerid],1); TextDrawSetProportional(tds3[playerid],1); TextDrawSetShadow(tds3[playerid],1); TextDrawShowForPlayer(playerid,tds3[playerid]); // format(str,sizeof(str),"level:%d",Player[playerid][Level]); tds4[playerid] = TextDrawCreate(321.000000,22.000000,str); TextDrawAlignment(tds4[playerid],0); TextDrawBackgroundColor(tds4[playerid],0x000000ff); TextDrawFont(tds4[playerid],2); TextDrawLetterSize(tds4[playerid],0.299999,1.000000); TextDrawColor(tds4[playerid],0xffffffff); TextDrawSetOutline(tds4[playerid],1); TextDrawSetProportional(tds4[playerid],1); TextDrawSetShadow(tds4[playerid],1); TextDrawShowForPlayer(playerid,tds4[playerid]); // format(str,sizeof(str),"XP:%d",Player[playerid][XP]); tds5[playerid] = TextDrawCreate(321.000000,21.000000,str); TextDrawAlignment(tds5[playerid],0); TextDrawBackgroundColor(tds5[playerid],0x000000ff); TextDrawFont(tds5[playerid],1); TextDrawLetterSize(tds5[playerid],0.299999,0.899999); TextDrawColor(tds5[playerid],0xffff00ff); TextDrawSetOutline(tds5[playerid],1); TextDrawSetProportional(tds5[playerid],1); TextDrawShowForPlayer(playerid,tds5[playerid]); }
public OnPlayerDisconnect(playerid, reason) { TextDrawHideForPlayer(playerid, tds5[playerid]); TextDrawHideForPlayer(playerid, tds4[playerid]); TextDrawHideForPlayer(playerid, tds3[playerid]); TextDrawDestroy(tds5[playerid]); TextDrawDestroy(tds4[playerid]); TextDrawDestroy(tds3[playerid]); }
public writeBank() { for(new i=0; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { new str[32]; format(str,sizeof(str)," 6AHK:%d",Player[i][Bank]); TextDrawHideForPlayer(i, tds3[i]); TextDrawSetString(tds3[i], str); TextDrawShowForPlayer(i,tds3[i]); } } } public writeLevel() { for(new i=0; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { new str[32]; format(str,sizeof(str),"level:%d",Player[i][Level]); TextDrawHideForPlayer(i, tds4[i]); TextDrawSetString(tds4[i], str); TextDrawShowForPlayer(i,tds4[i]); } } } public writeXp() { for(new i=0; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { new str[32]; format(str,sizeof(str),"XP:%d",Player[i][XP]); TextDrawHideForPlayer(i, tds5[i]); TextDrawSetString(tds5[i], str); TextDrawShowForPlayer(i,tds5[i]); } } } код не проверял, возможны опечатки. А вообще, имеет смысл не три текстдрава, а один на человека заводить. а чтоб в разных строках было, вставлять ~n~ - перенос строки
Текущая версия ERPG GM: 2.7.0 RC1(03.10.2009) http://3val.ru/games/samp/changelistServ.php
|
| |
|
|
| raen | Дата: Суббота, 22.03.2008, 11:07 | Сообщение # 11 |
|
Уважаемый человек
Группа:
Продвинутые
Сообщений: 785
Награды: 25
Город: PакунСити
Репутация: 154
Замечания: 20%
Статус: 
| Чёрт у меня почемуто васе текстдравы в куче теперь стоят, ставлю им прежние координаты, но нифига, они как были в одной куче так и остались, как им вернуть прежнее место ??? Насчёт таймера, помойму он уже работает норм и не останавлимвается
- Social Roleplay - ucp.gtamir.ru - 77.220.182.241:7777
Сообщение отредактировал raen - Суббота, 22.03.2008, 11:19 |
| |
|
|
|
 |
|
 | |
| |
|