[Движок] lifeiswar.ru[05.05.13]

Статус
В этой теме нельзя размещать новые ответы.
вообщем покавырял я там...нечего не понял. все вроде верно а не работает и все тут...может ява файл править надо можеш со своим сравнить? вот мой файл quest.js
PHP:
var QuestStep = 0;
var QuestDialogLeng = 0;
var ND = false;
var LD,DD;
var QCODE = '';
var QuestD,QuestP;

function StepByStep(cr)
{
    QuestStep += cr;
    d.getElementById('QuestDia').innerHTML = QuestD[QuestStep];
    d.getElementById('QuestNav').innerHTML = DialogNav();
}

function DialogNav()
{
    var navt = '';
    if(QuestStep > 0) navt += '<a class="block_prev" href="javascript: StepByStep(-1);"></a>';
    if(QuestStep < QuestDialogLeng) navt += '<a class="block_next" href="javascript: StepByStep(1);"></a>';
    if((QuestStep == QuestDialogLeng) && QuestP[1][0])
    {
        switch(QuestP[1][0])
        {
            case 1: navt += '<a class="block_get" href="javascript: AjaxGet(\'quest_ajax.php?act=1&qid='+QuestP[1][2]+'&vcode='+QuestP[1][1]+'\');"></a>'; break;
            case 2: navt += '<a class="block_end" href="javascript: AjaxGet(\'quest_ajax.php?act=2&qid='+QuestP[1][2]+'&vcode='+QuestP[1][1]+'\');"></a>'; break;
        }
    }
    return (navt ? '<BR>'+navt : '');
}

function CreateDialogDiv()
{
    ND = d.createElement('div');
    ND.id = 'darker';
  
    var userAgent = navigator.userAgent.toLowerCase();
    if(userAgent.indexOf('mac') != -1 && userAgent.indexOf('firefox')!=-1) ND.className = 'TB_overlayMacFFBGHack';
    else ND.className = 'TB_overlayBG';
  
    d.body.appendChild(ND);
  
    ND = d.createElement('div');
    ND.id = 'block_uni';
    ND.className = 'png';
    d.body.appendChild(ND);
}

function RemoveDialogDiv()
{
    d.body.removeChild(LD);
    d.body.removeChild(DD);
    ND = false;  
}

function QuestReady()
{
    if(ND === false)
    {
        CreateDialogDiv();
        LD = d.getElementById('block_uni');
        DD = d.getElementById('darker');
        DD.style.display = 'block';
    }
  
    QuestD = eval(arr_res[1]);
    QuestP = eval(arr_res[2]);
  
    QuestStep = 0;
    QuestDialogLeng = QuestD.length - 1;
  
    LD.innerHTML = '<table border="0" cellpadding="0" cellspacing="0" class="block"><tr><td height="326" width="56" rowspan="3" class="block_l png"></td><td height="35" class="block_t png"></td><td class="block_r png" width="4" rowspan="3"></td></tr><tr><td class="block_bg" width="688" height="262"><table style="margin:0px auto 0 70px; width:595px;" border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td class="text"><a class="block_close" href="javascript: RemoveDialogDiv();"><img src="http://localhost/image/1x1.gif" width="18" height="18" border=0></a><div id="QuestDia">'+QuestD[0]+'</div></td>'+(QuestP[0] ? '<td class="ava"><div><div class="ava_img"><img src="http://localhost/image/gameplay/faces/'+QuestP[0]+'" width="130" height="130" border="0"></div><div class="ava_border png"></div></div></td>' : '')+'</tr><tr><td colspan="2" class="buttons"><div id="QuestNav">'+DialogNav()+'</div></td></tr></table></td></tr><tr><td height="29" class="block_b png">&nbsp;</td></tr></table>';   
}

function QSel(QID)
{
    AjaxGet('quest_ajax.php?vcode='+QCODE+'&act=1&qid='+QID+'&r='+Math.random());
}

function QActive(vcode)
{
    QCODE = vcode;
    AjaxGet('quest_ajax.php?vcode='+QCODE+'&act=1&r='+Math.random());    
}

а вот quest_ajax.php проверь плиз я думаю в какомто из этих файлов косяк

PHP:
<?php
#GLOBALS OFF
header('Content-type: text/html; charset=windows-1251');
session_start();
include($_SERVER["DOCUMENT_ROOT"]."/includes/config.inc.php");
include($_SERVER["DOCUMENT_ROOT"]."/includes/functions.php");
foreach($_POST as $keypost=>$valp){
    $valp = varcheck($valp);
    $_POST[$keypost] = $valp;
}
foreach($_GET as $keyget=>$valg){
    $valg = varcheck($valg);
    $_GET[$keyget] = $valg;
}

$pers = GetUser($_SESSION['user']['login']);

list($pers['x'], $pers['y']) = explode('_', $pers['pos']);

$ShowQuestDialog = 0;

$Query = mysql_query("SELECT * FROM `quests` WHERE `loc`='".$pers['loc']."' AND `x`='".$pers['x']."' AND `y`='".$pers['y']."' AND `level_max`>='".$pers['level']."' AND `level_min`<='".$pers['level']."'");
$EndQuests = mysql_query("SELECT `quest_completed`.*,  `quests`.* FROM `quests` INNER JOIN `quest_completed` ON `quests`.`id` = `quest_completed`.`que_id` WHERE `quest_completed`.`usr_id`='".$pers['id']."' AND `quest_completed`.`que_st`>'0' AND `quests`.`loc`='".$pers['loc']."' AND `quests`.`x`='".$pers['x']."' AND `quests`.`y`='".$pers['y']."' AND `quests`.`level_max`>='".$pers['level']."' AND `quests`.`level_min`<='".$pers['level']."'");

if(mysql_num_rows($Query) == mysql_num_rows($EndQuests)){
    exit('QUEST@["Здравствуй '.$pers['login'].', для Вас сейчас нет никаких поручений."]@["",[0,"",]]');
}

if(empty($_GET['qid'])){
    while($row = mysql_fetch_assoc($Query)){
        $QuestStepOne = true;
        include($_SERVER["DOCUMENT_ROOT"]."/includes/quests/quest-".$row['id'].".php");
        $Quest = mysql_fetch_assoc(mysql_query("SELECT * FROM `quest_completed` WHERE `que_id`='".$row['id']."' AND `usr_id`='".$pers['id']."' AND `que_st` = '0'"));
        echo'QUEST@['.(($Quest)?$Quest_Yes:$Quest_No).']@["'.$row['face'].'",['.(($Quest)?2:1).',"'.vCode().'",'.$row['id'].']]';
    }
}else{
    switch($_GET['act']){
        case'1':
            $GetQuest = mysql_fetch_assoc(mysql_query("SELECT * FROM `quests` WHERE `loc`='".$pers['loc']."' AND `x`='".$pers['x']."' AND `y`='".$pers['y']."' AND `id`='".intval($_GET['qid'])."'"));
            if(!empty($GetQuest)){
                $StatusQuest = mysql_fetch_assoc(mysql_query("SELECT * FROM `quest_completed` WHERE `usr_id`='".$pers['id']."' AND `que_id`='".$GetQuest['id']."' AND `que_st` = '0'"));
                if(empty($StatusQuest)){
                    $QuestStepTwo = true;
                    include($_SERVER["DOCUMENT_ROOT"]."/includes/quests/quest-".$GetQuest['id'].".php");
                    mysql_query("INSERT INTO `quest_completed` (`usr_id`,`que_id`,`que_time_start`,`que_time_finish`,`que_query`,`que_name`,`que_desc`,`que_face`) VALUES ('".$pers['id']."','".$GetQuest['id']."','".time()."','".(time()+$GetQuest['time'])."','".$Need."','".$Quest_Name."','".$Quest_Desc."','".$GetQuest['face']."');");
                    echo'QUEST@['.$Quest_Get.']@["'.$GetQuest['face'].'",[0,"",'.$GetQuest['id'].']]';
                }else{
                    echo'ERR';
                }
            }
        break;
        case'2':
            $GetQuest = mysql_fetch_assoc(mysql_query("SELECT * FROM `quests` WHERE `loc`='".$pers['loc']."' AND `x`='".$pers['x']."' AND `y`='".$pers['y']."' AND `id`='".intval($_GET['qid'])."'"));
            if(!empty($GetQuest)){
                $StatusQuest = mysql_fetch_assoc(mysql_query("SELECT * FROM `quest_completed` WHERE `usr_id`='".$pers['id']."' AND `que_id`='".$GetQuest['id']."' AND `que_st` = '0'"));
                if(!empty($StatusQuest)){
                    include($_SERVER["DOCUMENT_ROOT"]."/includes/quests/quest-".$GetQuest['id'].".php");
                    $Items = explode("@",$StatusQuest['que_query']);
                    $NumsQuest = 0;$NumsInvent = 0;
                    for($i=0;$i<count($Items);$i++){
                        $ItemNeed = explode(";",$Items[$i]);
                        $NumsQuest += $ItemNeed[1];
                        $NumsInvent += mysql_num_rows(mysql_query("SELECT * FROM `invent` WHERE `pl_id`='".$pers['id']."' AND `protype`='".$ItemNeed[0]."' AND `used`='0' AND `clan`='0' AND `gift_from`='' LIMIT ".$ItemNeed[1].""));
                    }
                    if($NumsQuest == $NumsInvent){
                        echo'QUEST@['.$Quest_Status_ok.']@["'.$StatusQuest['que_face'].'",[0,"",'.$StatusQuest['que_id'].']]@';
                       
                        // Выдаем призы збираем вещи
                        for($i=0;$i<count($Items);$i++){
                            $ItemNeed = explode(";",$Items[$i]);
                            mysql_query("DELETE FROM `invent` WHERE `pl_id`='".$pers['id']."' AND `protype`='".$ItemNeed[0]."' AND `used`='0' AND `clan`='0' AND `gift_from`='' LIMIT ".$ItemNeed[1]."");
                        }
                        $exp = explode("|",$pers['exp']);
                        $QuestStepThree = true;
                        include($_SERVER["DOCUMENT_ROOT"]."/includes/quests/quest-".$GetQuest['id'].".php");
                        //Закончили с призами
                        exit;
                    }elseif($NumsQuest != $NumsInvent){
                        echo'QUEST@['.$Quest_Status_err.']@["'.$StatusQuest['que_face'].'",[0,"",'.$StatusQuest['que_id'].']]@';
                    }
                }else{
                    echo'ERR';
                }
            }
        break;
    }
}
 
Последнее редактирование:
в этих файлах всё норм просто сам файл квеста у тебя не зделаны
 
в этих файлах всё норм просто сам файл квеста у тебя не зделаны
как не сделаный если сделан...? вот посматри...

Quest-1

PHP:
<?php
$Need = "714;5;Изумрудных Колеец";

$ItemNeed = explode(";",$Need);

$Quest_Name = 'Чудодейственная мазь';

$Quest_Desc = 'Принесите лекарю Иоганну '.$ItemNeed[1].' шт. '.$ItemNeed[2].'. Срок - 3 дня.';

$Quest_No = '"Гутен таг, майн либе! На что жалюйтесь? Не может быть, чтобы человек, который пришоль ко мнье был софсем здороф. Как говорили у нас в Кардиффе во времья мой студенческий юность: нет здоровых людей, есть плохо обследованные!","Раздевайтесь, раздевайтесь. Старый Иоганн вас фнимательно послушает и что-нибудь точно найдйот!","Ах, вы не лечиться! А зачем тогда пришли? ","Ладно, не важно.","Знаете, майн шатц! Это отшень карашо, что вы пришель! Наферное Иляна услышать менья, поскольку мне понадобится ваш помощь.","В деревня Подгорный был фойер... по-вашему пожар... Много дом сгорель. Хвала богам, люди не погибайт... Но у них есть сильный ожог. Я готовить мазь от ожог, но ее на всех на хватит. Чтобы лечить люди, мне нужен жир. Он хорошо увлажняйт и защищайт кожа. ","Если вы принесетье мне 5 шт. Изумрудных Колеец, я платить кароший гельд... Деньги, по-вашему... "';

$Quest_Yes = '"Майне кляне, не мешайт. Мне некогда. Старый Иоганн спешит на срочный операций! А, это вы. Ну как?"';

$Quest_Get = '"Хорошо, майн шатц. Иди. И немножко торопись, а то больной люди может выздороветь раньше, чем вы придти."';

$Quest_Check = '"Майне кляне, не мешайт. Мне некогда. Старый Иоганн спешит на срочный операций! А, это вы. Ну как?"';

$Quest_Status_err = '"Ай-ай-ай! Фот и ферь после этого людьям! Фсе надо делать самому. А вы чего стоите! Идите отсюда, чтоб я вас здоровым у себья больше не фидел! Шнелле, шнелле!"';

$Quest_Status_ok = '"Фот спасипо фот фаше фознагрождение!"';

if($QuestStepThree == true){
    $Exp = 100;
    mysql_query("UPDATE `user` SET `exp`='".$exp[0]."|".($exp[1]+$Exp)."|".$exp[2]."' WHERE `id`='".$pers['id']."'");
    mysql_query("UPDATE `quest_completed` SET `que_st`='1' WHERE `que_id`='1' AND `usr_id`='".$pers['id']."'");
    mysql_query("INSERT INTO `chat` (`time`,`login`,`dlya`,`msg`) VALUES ('".time()."','sys','<".$pers['login'].">','".addslashes("top.frames['chmain'].add_msg('<font class=chattime>&nbsp;".date("H:i:s")."&nbsp;</font> <font color=000000><font color=#cc0000><b>Системная информация.</b></font> <b>Квест выполнен. Вы получили: <font color=#009900>Мирный Опыт (".$Exp.")</font>.</b></font><BR>'+'');")."');");
}

Quest-2

PHP:
<?php
if($QuestStepOne == true){
    if(mysql_result(mysql_query("SELECT `que_st` FROM `quest_completed` WHERE `que_id`='2' AND `usr_id`='".$pers['id']."'"),0) != ''){
        exit('QUEST@["Здравствуй '.$pers['login'].', для Вас сейчас нет никаких поручений."]@["",[0,"",]]');
    }
    if(mysql_result(mysql_query("SELECT `que_st` FROM `quest_completed` WHERE `que_id`='3' AND `usr_id`='".$pers['id']."'"),0) != ''){
        exit('QUEST@["Здравствуй '.$pers['login'].', для Вас сейчас нет никаких поручений."]@["",[0,"",]]');
    }
}
$Need = "2435;1;Карту Сокровищ";

$ItemNeed = explode(";",$Need);

$Quest_Name = 'Проблемные деньги.';

$Quest_Desc = 'Отправляйтесь на поиски и обыщите каждый жилой дом. Срок - 7 дней.';

$Quest_No = '"Йо-хо-хо… Лопни моя селезёнка, шинкарь Рома мне!!!","Ооо.. Тысячу чертей! Ты именно тот, кого я ищу, я вижу, ты сильный и смелый боец, наверняка хочешь подзаработать, я просто сам не справлюсь, да и ты не откажется сорвать несколько мешочков с золотом!","Присаживайся за столик, если тебе интересно обсудим.","Морской дьявол! Мне нужна помощь, найти моего матроса, у него есть вещь которая принадлежит мне, пирату - Грозы морей. Долгая история как эта вещь оказалась у них, думаю, ты старому волку уделишь не много времени.","Я прибыл сюда из далеких земель, бросил свою команду и корабль и отправился в их поиски, он украли у меня карту, он был членом моего корабля, моим матросам. Когда мы приплыли к земле, он куда-то пропал, но и следом пропала моя карта, карта где хранятся сокровища, огромные сокровища. Он меня обокрал!!! Я готов его скормить акулам, только попадись мне он и что бы не стоило вернуть карту, помоги мне я тебя вознагражу, хорошей саблей, хорошей броней из далеких земель, которые прочны как сталь! Таких ты ещё с роду не видела.","Мне сказали, что он скрываются здесь в этом городе! И он украли у меня не много золота, видимо он тут живет или снимает комнату, а может, и купил дом у них золото будет достаточно. Нам надо спешить! Пока он не собрал все не обходимое и не отправился на остров за сокровищами!!!"';

$Quest_Yes = '"Ну что, как поиски я его искал везде, ни кто о них не знает и ни кто не видел его… боже, что мне делать!!!","Жалко я не увидел, какого цвета его кишки, если бы я встретил бы раньше чем ты, я бы его тело скормил акулам!","Разрази меня гром! Ты говоришь карта у тебя? Давай карту сюда, сухопутная крыса!!!"';

$Quest_Get = '"Надо проверить все комнаты, все дома. Надо во что бы ни стало найти его. Наверняка местные жители, заметили новичка. Я пока буду занят другими поисками, город у вас большой я пойду в одну, ты в другую сторону и встретимся здесь в таверне, как что-то узнаешь я тебя буду тут ждать, с картой или с новостями."';

$Quest_Check = '"Майне кляне, не мешайт. Мне некогда. Старый Иоганн спешит на срочный операций! А, это вы. Ну как?"';

$Quest_Status_err = '"Вот чего ты ко мне приперся? Вали искать карту!"';

$Quest_Status_ok = '"Какие деньги, какие сабли… (смеется). Если не хочешь отдать её по-хорошему, я отберу у тебя её силой!!!!"';

if($QuestStepThree == true){
    mysql_query("UPDATE `quest_completed` SET `que_st`='2' WHERE `que_id`='2' AND `usr_id`='".$pers['id']."'");
    mysql_query("INSERT INTO `chat` (`time`,`login`,`dlya`,`msg`) VALUES ('".time()."','sys','<".$pers['login'].">','".addslashes("top.frames['chmain'].add_msg('<font class=chattime>&nbsp;".date("H:i:s")."&nbsp;</font> <font color=000000><font color=#cc0000><b>Системная информация.</b></font> <b>На вас напал пират.</b></font><BR>'+'');top.frames['main_top'].location='main.php?QuestBattle=".time()."';")."');");
//    $Exp = 100;
//    mysql_query("UPDATE `user` SET `exp`='".$exp[0]."|".($exp[1]+$Exp)."|".$exp[2]."' WHERE `id`='".$pers['id']."'");
//    mysql_query("UPDATE `quest_completed` SET `que_st`='1' WHERE `que_id`='1' AND `usr_id`='".$pers['id']."'");
//    mysql_query("INSERT INTO `chat` (`time`,`login`,`dlya`,`msg`) VALUES ('".time()."','sys','<".$pers['login'].">','".addslashes("top.frames['chmain'].add_msg('<font class=chattime>&nbsp;".date("H:i:s")."&nbsp;</font> <font color=000000><font color=#cc0000><b>Системная информация.</b></font> <b>Квест выполнен. Вы получили: <font color=#009900>Мирный Опыт (".$Exp.")</font>.</b></font><BR>'+'');")."');");
}

или ты чтото другое имееш ввиду? таких у меня 6 файлов тоесть 6 разных квестов но неодин не пашет...
 
ну если есть файлы смотри бд тогда
 
народ проблема вот в чем когда пытаешся зарегить персонажа пишет

Out of range value for column 'id' at row 1

и в игре когда начинается бой против ботов то против тебя никого нету но боты в базе есть...
 
перезалейте файлы а то нету на депозите
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху