Просмотр полной версии : показывание на экране переменной
у меня есть вопрос.
вот есть у меня к примеру переменная score.
там будет храниться цифровая информация.
как сделать чтобы на экране выводилось то ,что она хранит. цифоры.
я начинающий програмист. прозьба обьяснять все поподробнее.
Stargazer
05.05.2009, 00:52
1. Воспользоваться динамическим текстом.
Разместить текстовый элемент, указать, что он dynamic text, дать ему имя (например, myVarText).
Теперь в скрипте:
myVarText.text= myVar;
Также следите за областью видимости. Например, если вы разместили myVarText на главной шкале - то пишите _root.myVarText.text= myVar;
2. Воспользоваться командой trace (выводит текст в отдельном окошке)
trace(myVar);
3. Воспользоваться отладкой.
Поставить breakpoint на том участке, где вы хотите отслеживать переменную, запустить отладку (ctrl+shift+enter), нажать play. В отладочном окне, слева, на закладке local будет список переменных. Теперь нажимайте на step или over и наблюдайте, как изменяется значение переменной при выполнении очередного оператора.
Наверняка автору темы вывод значения переменной score нужен не для отладки, а чтобы очки в игре выводить.
alekslitvinenk
05.05.2009, 02:42
скорее всего, автор просто хочет научиться что-нибудь выводить на экран :)
да, это будут очки пользователя.
а чтонибудь выводить на экран я уж умею.
мне имменно надо чтобы вправо сверху выводился ноль. пользоватьель набирает очки и число увеличиваеться.
nOobCrafter
05.05.2009, 11:06
в тот моент когда увеличивается кол-во очков происходит то то такое:
myVar++; // увеличиваем кол-во очков
myVarText.text= myVar; // присваиваем текстовому поле новое значение
надо незабывать каждый раз при изменении myVar присваивать ее значение полю, иначе оно будет содержать старое значение)
вопрос. а зачем
myVarText.text = ...
не проще ли в текстовом поле написать score в графе "var"
и просто писать
score++
тогда и присваивать ничего не надо
Stargazer
05.05.2009, 13:27
вопрос. а зачем
myVarText.text = ...
не проще ли в текстовом поле написать score в графе "var"
и просто писать
score++
тогда и присваивать ничего не надо
Можте быть, проще, а, может быть, и нет. Часто бывает неудобно валить всё в одну кучу.
Проще всего один раз написать функцию для изменения количества очков и пользоваться ею.
alekslitvinenk
05.05.2009, 14:44
никогда никогда, ни при каких обстоятельствах не трогайте поле var у текстовых полей...
ибо одна головня боль...
Эт с чего бы? Объясните, пожалуйста.
Эт с чего бы? Объясните, пожалуйста.
Вам же сказали "никода, никогда", что вам ещё и третий раз повторить"никогда":D
Эт с чего бы? Объясните, пожалуйста.
Предок динозавров.
несовсем понимаю...
к чему привязывать код этот?
и это все? такой маленький код?
myVar это переменная для которой приведен там код?
я говорю я начинающий.
Stargazer
05.05.2009, 19:42
Например, на главной шкале вы разместили текст, сделали его динамическим, указали ему название myText.
Переменная score пусть тоже хранится на главной шкале. Тогда myText.text= score отобразит содержимое вашей переменной в myText (если вы его написали на той же главной шкале).
спасибо огромное!!! понял!!! разобрался!!!
теперь разработка игры пошла!
и меняеться число когда score увеличеваеться! и место легко поставить и цвет и все!
СПАСИБО!
а вот такая схема имеет право на существование? :
var score:Number=0
var timer:Number=0
function score_inf(){
createTextField("score_i",10,300,200,100,50)
score_i.text="SCORE: "+score
}
score_inf()
this.onEnterFrame=function(){
if(timer<20){timer++}else{
score++
score_inf()
timer=0
}}
думаю имеет но больно сложная она. сейчас поразбираюсь.
Добавлено через 32 минуты
да спосибо за пример но согласись придыдущие было куда проще.
хотя и твой пример хорош. :)
и спосибо за timer а то я искал как сделать секундомер :)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.