SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Русский/Russian

Reply
 
Thread Tools Display Modes
Old 27/07/2019, 03:51 PM   #1
wowowo
Little Clucker
 
Join Date: Apr 2019
Posts: 8
Reputation: 0
Question Видимость переменных в include

Здравствуйте.

Немного предыстории:
- сделал себе мультиязычность в моде посредством: глобального двухмерного массива (translate[ID Текста][Язык текста{0 - RU, 1 - EN}]) и добавлением в enum информации об игроках (pInfo) переменную pLanguage;
- решил вынести все TextDraw'ы из основного pwn-файла в include.
- создал PlayerTextDraw'ы по такому принципу: CreatePlayerTextDraw(playerid, TDName[playerid][0], translate[TextID][PlayerInfo[playerid][pLanguage]]); и засунул их все в одну функцию (CreatePlayerTextDraws(playerid)), которую в моде вызываю в OnPlayerConnect.

Проблема заключается в том, что при компиляции мода выдаёт ошибку о том, что в инклуде с TextDraw'ами присутствует error 017: необъявленный символ "PlayerInfo".

Собственно, вопрос заключается в том, как можно исправить данную проблему (ошибку)?

P.S. Добавить язык в качестве параметра функции CreatePlayerTextDraws(playerid) не вариант, т.к. в данном инклуде присутствуют ещё функции связанные с отображением / скрытием целых композиций из TextDraw и добавлять в каждую из них такой параметр не считаю целесообразным (по крайней мере в своём моде).
wowowo is offline   Reply With Quote
Old 27/07/2019, 06:19 PM   #2
Romzes24
Big Clucker
 
Join Date: Oct 2011
Posts: 63
Reputation: 0
Default Re: Видимость переменных в include

Quote:
Originally Posted by wowowo View Post
Собственно, вопрос заключается в том, как можно исправить данную проблему (ошибку)?
Нужно подключить инклуд ниже создания массива PlayerInfo.
Romzes24 is offline   Reply With Quote
Old 28/07/2019, 01:09 PM   #3
wowowo
Little Clucker
 
Join Date: Apr 2019
Posts: 8
Reputation: 0
Default Re: Видимость переменных в include

Quote:
Originally Posted by Romzes24 View Post
Нужно подключить инклуд ниже создания массива PlayerInfo.
Пробовал. Не вариант, потому что по умолчанию игроку присваивается pLanguage = 0 (т.е. язык - русский) и поэтому в инклуде с TextDraw'ами pLanguage всего равно нулю (соответственно, всегда отображается русский язык, даже если выбран английский).
В конце мода тоже не вариант, т.к. тогда появляются ошибки #17 о неизвестных переменных TextDraw'ов.
wowowo is offline   Reply With Quote
Old 28/07/2019, 03:45 PM   #4
eakwarp
High-roller
 
Join Date: Feb 2007
Posts: 1,906
Reputation: 131
Default Re: Видимость переменных в include

функция для управления и присвоения пары переменных тебя спасет.
__________________
More than 10 years of development, more than 40 mb(sic! 1 kk lines+) of source code, more than a two hundred units and more than 35k revisions(upd. aug 2017). Valakas Roleplay - choose your role.

Как правило, то, что делаю я, лишь через годы начинают делать другие, но потом, обязательно мне ставят в укор, "ой, да это уже у всех есть"...



[Gamemode] Valakas Trucker Roleplay (Russian).
eakwarp is offline   Reply With Quote
Old 29/07/2019, 05:45 PM   #5
wowowo
Little Clucker
 
Join Date: Apr 2019
Posts: 8
Reputation: 0
Default Re: Видимость переменных в include

Quote:
Originally Posted by eakwarp View Post
функция для управления и присвоения пары переменных тебя спасет.
Немного не понял. Можешь объяснить подробнее или привести пример?
wowowo is offline   Reply With Quote
Old 30/07/2019, 09:38 AM   #6
eakwarp
High-roller
 
Join Date: Feb 2007
Posts: 1,906
Reputation: 131
Default Re: Видимость переменных в include

Размещаешь подключение инклюда ниже плеер инфо, пилишь отдельную функцию для установки planguage=1, используешь ее в инклюде с текстдравами.
__________________
More than 10 years of development, more than 40 mb(sic! 1 kk lines+) of source code, more than a two hundred units and more than 35k revisions(upd. aug 2017). Valakas Roleplay - choose your role.

Как правило, то, что делаю я, лишь через годы начинают делать другие, но потом, обязательно мне ставят в укор, "ой, да это уже у всех есть"...



[Gamemode] Valakas Trucker Roleplay (Russian).
eakwarp is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Видимость объектов Ins1d3 Русский/Russian 3 04/03/2018 04:23 PM
Есть ли ограничение переменных в PAWN? Daea Русский/Russian 10 02/12/2014 08:58 PM
Обнуление переменных Sergeyhach Русский/Russian 10 28/03/2013 02:00 AM
Сортировка переменных T.S Русский/Russian 3 17/01/2013 10:30 AM
Хранение пользовательских переменных p01yak0v Русский/Russian 26 01/06/2012 02:27 AM


All times are GMT. The time now is 08:01 AM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.