[FilterScript] Инфо-панель для разработчиков (v1.0)
#1

Инфо-панель для разработчиков


Описание:

Данный фильтерскрипт создаёт инфо-панель (текстдрав), на которой
будут отображены некоторые данные игрока.
По своей сути панель предназначена для разработки игровых модов.
Поэтому использовать данный скрипт просто для игры было бы не
совсем разумно.

Установка:

1. Поместить в папку filterscripts файлы info.pwn и info.amx;
2. В конфиге файла server.cfg дописать в ключе filterscripts
строку info.

Использование:

В игре прописать команду /инфо

Файлы (.pwn + .amx) и скрины прикреплены ниже.

Исходник .pwn для быстрого просмотра -
v1.1 http://pastebin.com/bALzMMKw
v1.0 http://pastebin.com/nKwXHfFc

Изменения:
- в v1.1 исправлен баг, связанный с неправильным обновлением текста для текстдрава
Reply
#2

Очень некрасиво и бесполезно.
Reply
#3

Какой в этом смысл?
Reply
#4

Довольно просто сделано, но хорошо.
Хотя если взять те же аналоги, то есть встроенные команды /save и /int, это отличается от них только показом ещё и виртуального мира.
Reply
#5

Чтобы в save не лезть..
Reply
#6

Quote:
Originally Posted by OrangeJam
View Post
Чтобы в save не лезть..
Легче в save сохранить и потом оттуда скопировать координаты чем вручную их набирать.
Reply
#7

Quote:
Originally Posted by Kolstin
View Post
Какой в этом смысл?
Живой пример. Занимаюсь расстановкой транспорта,
и буквально только что мне нужно было узнать координаты велика,
который ранее сохранил в /save. И по значениям в панели я быстро нашёл его)

Reply
#8

Quote:
Originally Posted by Diman777
View Post
Живой пример. Занимаюсь расстановкой транспорта,
и буквально только что мне нужно было узнать координаты велика,
который ранее сохранил в /save. И по значениям в панели я быстро нашёл его)

А в /dl разве нельзя посмотреть координаты транспорта?
Reply
#9

Я не понял тебя. Мне нужно было найти велик, но как его найду в игре не видя координат?) Я включил панель и переместился в нужные мне координаты (там где находился транспорт)
Reply
#10

Quote:
Originally Posted by Diman777
View Post
Я не понял тебя. Мне нужно было найти велик, но как его найду в игре не видя координат?) Я включил панель и переместился в нужные мне координаты (там где находился транспорт)
Значить я не правильно тебя понял изначально. А не проще создать команду для телепорта по координатам?
Reply
#11

Как бы с одной стороны проще будет, но я например пользуюсь разными вариантами.
Reply
#12

В принципе, для разработки это необходимо, и лучше пусть будет вариант с фильтр-скриптом - вдруг кому-то пригодится.
За вынесенные в начало скрипта переменные и в целом аккуратный код автору плюс. Единственное, что я не могу оставить в покое - фанатизм с переносом строк на новую строку. Я, конечно, понимаю, что еще есть в мире люди, которые пишут код на миниатюрных экранах, но добавлять перенос среди строки длиной 66 символов как-то перебор, да и код от этого лучше не выглядит. Может быть так вставлен перенос строки, но я бы предпочел \n, не зря же его когда-то разработали.
Reply
#13

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



Вообщем постараюсь такие недочёты исправлять если будут обновления и т.д.
Reply
#14

Quote:
Originally Posted by Diman777
View Post
Я не понял тебя.
Команда /dl и сделана для всего этого. Чтобы узнать координаты транспорта и прочее.
Cg3DTRo[1].jpg

Quote:
Originally Posted by Diman777
View Post
Мне нужно было найти велик, но как его найду в игре не видя координат?) Я включил панель и переместился в нужные мне координаты (там где находился транспорт)
Я конечно не на что не намекаю, но ты сам то понял что написал?

prineside, при чём тут \n, если это совсем другая история?
Reply
#15

Да. Я включаю панель и перемещаюсь в 'нужные' координаты. Я это понимаю именно так)
Reply
#16

Обновил до v1.1
Изменение: Исправил баг с изменением текста для текстдрава.
PHP Code:
// Вместо
static string_buffer[MAX_STRING_DI] = ' ';
if (
strcmp(string_bufferstring_currenttrue))
{
    
TextDrawSetString(td_id[playerid], string_current);
}
string_buffer string_current;
// конечно же нужно изменять текст отдельно для каждого игрока
if (strcmp(string_buffer_info[playerid], string_currenttrue))
{
    
TextDrawSetString(td_id[playerid], string_current);
}
string_buffer_info[playerid] = string_current
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)