Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Помогите полностью удалить строку в массиве (http://www.flasher.ru/forum/showthread.php?t=175934)

freeslim 27.02.2012 17:45

Помогите полностью удалить строку в массиве
 
Всем привет. Пытаюсь сделать викторину. Проблема появляется с повторением вопросов. Общий код следующий.
Код AS1/AS2:

stop();
initGame();
 
function initGame() {
        // set variables
        questionNum = int(Math.random()*qArray.length);
        numRight = 0;
        level._xscale = 0;
        // ask the first question
        displayQuestion();
}
 
function displayQuestion() {
        // see whether all the questions have been asked
        if (numRight >= 10) {
                gotoAndPlay("level up 1");
 
        } else {
 
                // place the question and answers on the screen
                question.text = qArray[questionNum][0];
                answer0.text = qArray[questionNum][1][0];
                answer1.text = qArray[questionNum][1][1];
                answer2.text = qArray[questionNum][1][2];
                answer3.text = qArray[questionNum][1][3];
                //МОЙ КОД
                level._xscale = numRight*33,3;
                // remember which one is correct
                correctAnswer = int(qArray[questionNum][2]);
 
                }
}
 
 
function selectAnswer(n) {
        // add to count if correct
        if (n == correctAnswer) {
                numRight++;
                qArray[questionNum].splice(0);
                trace(qArray);
        } else {
                gotoAndStop("game over");
        }
 
        // ask next question
        questionNum = int(Math.random()*qArray.length);
        questionAll++;
        displayQuestion();
}
 
function getHelp() {
        help.text = qArray[questionNum][1][4];
}

Вот что в OUTPUT
,В каком месяце начинается весна,январь,февраль,март,апрель,февраль или март,2,
,Сталица России,Москва,Белогорск,Новосибирск,Владивосток,Белогорск или Москва,0,
,,,Как зовут котенка Гав,Чук,Гек,Гак,Гав,Гек или Гав,3,
Кто написал Евгний Онегин,Лермтов,Пушкин,Толстой,Гоголь,Пушкин или Гоголь,1,
,,Сколько часов в сутках,18,23,19,24,18 или 24,3,
,Скольо дней в високосном году,365,366,356,357,365 или 366,1,
,Кого отправили в космос,Белка и Стрелка,Никитка и Палатка,Мурка и Жмурка,Том и Джерри,Белка и Стрелка или Мурка и Жмурка,0,
,,Сталица России,Москва,Белогорск,Новосибирск,Владивосток,Белогорск или Москва,0,
,,,Как зовут котенка Гав,Чук,Гек,Гак,Гав,Гек или Гав,3,


Как я понял, после удаления строки остается пустая строка и поэтому вместо вопроса и ответов выдается undefined. Как это исправить? Заранее спасибо

in4core 27.02.2012 20:56

array#splice

так же есть delete array[n] , но тут как раз удаляет только элемент оставляя пустым значение. Первый же вариант решает все вопросы

udaaff 27.02.2012 22:05

Код AS1/AS2:

qArray.splice(questionNum, 1);

?

freeslim 28.02.2012 02:53

Цитата:

Сообщение от udaaff (Сообщение 1065876)
Код AS1/AS2:

qArray.splice(questionNum, 1);

?

СПАСИБО БОЛЬШОЕ!!! Все работает как часы. А то который день не мог додуматься как это исправить.
Еще раз СПАСИБО!!!


Часовой пояс GMT +4, время: 02:08.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.