За последние 24 часа нас посетил 16801 программист и 1647 роботов. Сейчас ищут 1073 программиста ...

Хелп плиз :)

Тема в разделе "JavaScript и AJAX", создана пользователем CTAPu4OK, 26 июл 2008.

  1. CTAPu4OK

    CTAPu4OK Активный пользователь

    С нами с:
    26 июл 2008
    Сообщения:
    1
    Симпатии:
    0
    В самом востановлении скрипте востановления сделал время востановления - 10 минут.
    В скрипте отображения сделал тоже самое. Всё работает прекрасно, НР обновляется интерактивно, но всёже есть пару вопросов и проблем:
    Вот сам скрипт:

    Код (Text):
    1. var rnd = Math.random();
    2. var delay = 10;
    3. var redHP = 0.33;
    4. var yellowHP = 0.66;
    5. var TimerOn = -1;
    6. var tkHP, maxHP;
    7.  
    8. function setHP(value, max) {
    9. tkHP=value; maxHP=max;
    10. if (TimerOn>=0) { clearTimeout(TimerOn); TimerOn=-1; }
    11. setHPlocal();
    12. }
    13.  
    14. function setHPlocal() {
    15. if (tkHP>maxHP) { tkHP=maxHP; }
    16. var sz1 = Math.round((150/maxHP)*tkHP);
    17. var sz2 = 150 - sz1;
    18. if (document.all(\"HP\")) {
    19. document.HP1.width=sz1;
    20. document.HP2.width=sz2;
    21. if (tkHP/maxHP < redHP) { document.HP1.src=\'i/HP status/red.jpg\'; }
    22. else {
    23. if (tkHP/maxHP < yellowHP) { document.HP1.src=\'i/HP status/yellow.jpg\'; }
    24. else { document.HP1.src=\'i/HP status/green.jpg\'; }
    25. }
    26. var s = document.all(\"HP\").innerHTML;
    27. document.all(\"HP\").innerHTML = s.substring(0, s.lastIndexOf(\'[\')+1) + \"<font color=#bb0000><b>\" + Math.round(tkHP)+\"/\"+maxHP+\"</b></font>]\";
    28.  
    29. }

    Вопрос - Как я понял обновляется каждые 5 секунд (интерактивное обновление я имею ввиду) Тоесть если Нр дапустим 500 - то он каждые 5 секунд добавляет по +5 НР. Как сделать чтобы одновлялось кажду секунду? Я пробывал изменить \"var delay = 10;\" на \"var delay = 1;\" но он каждую секунду пополнял по 5 НР, тоесть отображал криво.. Как сделать чтобы работало нормально и показывало каждую секунду?

    Проблема №1 - Такая пробелма. Полоса НР проводится не до конца. Тоесть даже при максимальном количестве НР - всёравно в конец остаётся 1 пиксель серой полоски (грея). Как это исправить?
    Проблема №2 - Не доводит НР до максимума.. Пример приведу на техже 500 НР и 10 минутным востановлением. Доводит до 495 и дальше ен ведёт пока не обновить. Что делать?
     
  2. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Фак мой мозг. Он вскипел сразу.