Русское сообщество по скриптингу

web file

Все вопросы по скриптингу для SourceMod, помощь в редактировании плагинов.
Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптингу для SourceMod.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [pawn], в противном случае, если тег [pawn] не отображает ваш код, можно использовать тег [code].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sp плагина.

web file

Сообщение semjef » 30 авг 2011, 12:02

здравствуйте,

я сделал плагин в котором люди чьи STEAM ID указаны в текстовом файле получали доп хп,
и мне нужно чтоб этот плагин брал ID игроков не из файла находящегося на сервере, а файла расположеного на HTTP сервере, например Вы должны зарегистрироваться, чтобы видеть ссылки.

возможно ли это и если да то подскажите пожалуйста как)

вот например обращение к файлу

[pawn]
  1. GetAddHealth(String:SteamId[])

  2. {

  3.         new health;

  4.         new String:file[255];

  5.         BuildPath(Path_SM, file, 255, "configs/aura/steamid.txt");

  6.  /*

  7. тут обращается к файлу на сервере это и нужно исправить чтоб обращалось к Вы должны зарегистрироваться, чтобы видеть ссылки.

  8. */

  9.         new Handle:kv = CreateKeyValues("SteamId");

  10.         FileToKeyValues(kv, file);

  11.         KvJumpToKey(kv, SteamId);

  12.         health = KvGetNum(kv, "hp");

  13.         CloseHandle(kv);

  14.         return health;

  15. }
[/pawn]
Исходный код вставляем в теги PAWN // EvilCoder
Аватара пользователя
semjef
 
Сообщения: 4
Зарегистрирован: 30 авг 2011, 11:47
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Опыт программирования: Меньше месяца
Языки программирования: Counter-Strike: Source

Re: web file

Сообщение semjef » 31 авг 2011, 21:06

или как сделать чтоб данные брались из базы mysql
Аватара пользователя
semjef
 
Сообщения: 4
Зарегистрирован: 30 авг 2011, 11:47
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Опыт программирования: Меньше месяца
Языки программирования: Counter-Strike: Source

Re: web file

Сообщение Uzarik » 31 авг 2011, 21:53

Аватара пользователя
Uzarik
 
Сообщения: 29
Зарегистрирован: 02 июн 2010, 17:26
Откуда: Санкт-Петербург
Благодарил (а): 7 раз.
Поблагодарили: 5 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6

Re: web file

Сообщение DJ_WEST » 01 сен 2011, 13:48

Uzarik, то тема по AMXX, а не SourceMod.

Для чтения файла с WEB-сервера тебе нужно расширение sockets, то есть получать файл через обычный HTTP GET запрос
Вы должны зарегистрироваться, чтобы видеть ссылки.

Скачиваешь файл, потом читаешь и делаешь тоже самое.
Там в архиве даже пример есть:
The example example.sp downloads a file via http to <modfolder>/dl.htm
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2

Re: web file

Сообщение semjef » 01 сен 2011, 22:01

хм...
неплохая тема, но вот она скачивает этот файл... это происходит каждый раз при перезапуске сервера или как?

я не могу понять?

идеал конечно если плагин читать будет то что на сайте)))
Аватара пользователя
semjef
 
Сообщения: 4
Зарегистрирован: 30 авг 2011, 11:47
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Опыт программирования: Меньше месяца
Языки программирования: Counter-Strike: Source

Re: web file

Сообщение DJ_WEST » 02 сен 2011, 16:02

Когда захочешь, тогда и скачиваешь. В SourceMod по сравнению с AMXX в этом плане лучше, после смены карты плагин не перегружается. Если нужно, чтобы читать с сайта, почему нет? Опять же делаешь запрос получаешь код страницы в ответ, парсишь данные и все.
Не пишите мне в ЛС: если вам нужна помощь на бесплатной основе. Любые вопросы на форум.
Аватара пользователя
DJ_WEST
Администратор
 
Сообщения: 3641
Зарегистрирован: 22 авг 2009, 00:38
Благодарил (а): 48 раз.
Поблагодарили: 2209 раз.
Опыт программирования: Больше трех лет
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Left 4 Dead
Left 4 Dead 2

Re: web file

Сообщение semjef » 02 сен 2011, 16:42

за сколько вы могли бы сделать чтоб читало данные со страницы HTTP сайта из плагина ауры?
и данные обновлялись раз в сутки или при смене мапы.
Аватара пользователя
semjef
 
Сообщения: 4
Зарегистрирован: 30 авг 2011, 11:47
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Опыт программирования: Меньше месяца
Языки программирования: Counter-Strike: Source

Re: web file

Сообщение Dn1pRo » 19 сен 2011, 21:50

Точно ты сделал плагин? Просто в моем оригинале ауры ну прям точь в точь такая функция, которую я писал лично. Могу сказать, что тут ну уж очень неоптимизированный код. При каждом запросе делать чтение из файла - хреново. По молодости совершал ошибки, теперь вот смешно смотреть на свой код полугодичной давности.

А по факту: при старте карты, к примеру, через сокеты делаешь запрос на скачивание файла, после скачивания переводишь его в глобальный хендл кейвалуев, а в функции просто делаешь запрос в глоб. хендл кейвалуев.
Аватара пользователя
Dn1pRo
 
Сообщения: 51
Зарегистрирован: 17 авг 2010, 22:17
Благодарил (а): 11 раз.
Поблагодарили: 3 раз.
Опыт программирования: Меньше недели
Языки программирования: Counter-Strike: Source


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1