Понедельник, 17 Июня 2024, 00:17

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
AssasinДата: Четверг, 30 Июня 2011, 16:37 | Сообщение # 221 | Тема: Урок по созданию браузерной игры № 2
web-coder
Сейчас нет на сайте
Смотри в какой кодировке сохраняешь файлы, если utf-8, то в браузере выбирай кодировку utf-8.
AssasinДата: Четверг, 30 Июня 2011, 12:15 | Сообщение # 222 | Тема: Как на PHP сделать рандомно выпадение предметов
web-coder
Сейчас нет на сайте
RAND() лучше в БД не использовать, т.к. он создает временную таблицу и с нее рандомно выбирает значения, а это доп. нагрузка на сервер. При том если вещей много и пользователи одновременно сделают этот запрос, то нагрузка будет очень большая.
Можно попробовать так:
Code

$rnd = rand(1, mysql_result(count_query("SELECT MAX(id_item) FROM items"),0));
AssasinДата: Среда, 29 Июня 2011, 19:30 | Сообщение # 223 | Тема: Как на PHP сделать рандомно выпадение предметов
web-coder
Сейчас нет на сайте
Получается % выпадения вещи 120%, значит вещь выпала. Все что выше 100 то вещь выпала.
AssasinДата: Пятница, 24 Июня 2011, 12:46 | Сообщение # 224 | Тема: Увеличение параметров
web-coder
Сейчас нет на сайте
Code
if ($shpion == $v and $money >= $g)

У тебя в формуле происходит проверка только для шпионов, поэтому измени немного функцию
Code

function up($v, $g, $type_center)   
{    
    global $money;   
        
    if ($type_center == $v and $money >= $g)   
    {   
     $result45 = mysql_query("UPDATE `users`   
          SET `".$type_center."`=(".$type_center." + 5),`money`=(money - ".$g.")   
           WHERE id_user=".$_SESSION['user']['id_user']);   
     if ($result45)   
           {   
              return true;   
           }      
               else      
                   {   
                      die(mysql_error());   
                    }    
   }  elseif ($money < $g) {   
print "выводим сообщение о том что денег не хватает";   
}       
}

ну и ниже подправь где происходит проверка на каждый центр
Code

if (isset($id))   
{   
    switch($id)   
    {   
///////////////////////////////////////////
     case 1:   
      $num = 10;   
      $g = 1000;   
      while ($num <= 100)   
           
      {   
              up($num, $g, "shpion_center");   
              $num += 5;   
              $g += 1000;   
          }    
     
       break;
AssasinДата: Среда, 22 Июня 2011, 22:18 | Сообщение # 225 | Тема: Увеличение параметров
web-coder
Сейчас нет на сайте
пробуй так
Code

if ($gold < $g) {
echo "Нету денег";
} elseif ($vor_centr == $v and $gold >= $g) {
     $result = mysql_query("UPDATE `user`
          SET `".$type."_centr`=(".$type."_centr + 5),`gold`=(gold - ".$g.")
           WHERE `username` ='".$valid_user."'");
     if ($result) {
      return true;
     } else {
      die(mysql_error());
     }   
}

либо перед функцией пишешь
Code
$_SESSION['err'] = "";

функцию изменяешь
Code

if ($gold < $g) {
$_SESSION['err'] = "Нету денег";
} elseif ($vor_centr == $v and $gold >= $g) {
     $result = mysql_query("UPDATE `user`
          SET `".$type."_centr`=(".$type."_centr + 5),`gold`=(gold - ".$g.")
           WHERE `username` ='".$valid_user."'");
     if ($result) {
      return true;
     } else {
      die(mysql_error());
     }   
}

и дальше ошибку выводишь
Code

if ($_SESSION['err'] != "") { echo $_SESSION['err']; }

Можно еще варианты придумать если есть желание smile
AssasinДата: Воскресенье, 19 Июня 2011, 13:39 | Сообщение # 226 | Тема: Увеличение параметров
web-coder
Сейчас нет на сайте
Проверка в функции up
Code

if ($vor_centr == $v and $gold >= $g) {
    $result = mysql_query("UPDATE `user`
         SET `".$type."_centr`=(".$type."_centr + 5),`gold`=(gold - ".$g.")
          WHERE `username` ='".$valid_user."'");
    if ($result) {
     return true;
    } else {
     die(mysql_error());
    }  
} elseif ($gold < $g) {
выводим сообщение о том что денег не хватает
}
AssasinДата: Суббота, 18 Июня 2011, 23:34 | Сообщение # 227 | Тема: Ищу веб-дизайнера и javascript/flash прогера(1-2 дня работы)
web-coder
Сейчас нет на сайте
Не заметил эту темку, так бы сразу код тебе накатал, но так как тут отписался Master_Chief, то думаю он с этой задачей тоже справится отлично smile
AssasinДата: Пятница, 17 Июня 2011, 10:15 | Сообщение # 228 | Тема: Увеличение параметров
web-coder
Сейчас нет на сайте
hripun, а чем тебе не нравится global?
AssasinДата: Четверг, 16 Июня 2011, 21:58 | Сообщение # 229 | Тема: Увеличение параметров
web-coder
Сейчас нет на сайте
Вот приблизительный код, очки добавляет нормально, а деньги снимает в такой зависимости:
1000, 5000, 9000, 13000, 17000, 21000 и т.д. тоесть добавляет каждый раз 4000. Но ты можешь ввести какой нибудь коефициент, который при каждой итерации увеличивается, соответственно увеличивает стоимость.
Code

<?php
include('../config.php');
?>
Грабителли - <?php echo $vor_centr; echo "<a href ='town_centre.php?id=1' class='links'>[+]</a>"  ?><br>
Саботажники - <?php echo $sab_centr;echo "<a href ='town_centre.php?id=2' class='links'>[+]</a>"  ?><br>
Шпионы -  <?php echo $shpion_centr; echo "<a href ='town_centre.php?id=3' class='links'>[+]</a>"  ?><br>
Диверсанты -  <?php echo $divers_centr; echo "<a href ='town_centre.php?id=4' class='links'>[+]</a>"  ?><br>

<?php if($_GET)
{
       header("Location: {$_SERVER['PHP_SELF']}");   
       header("Location: {$_SERVER['HTTP_REFERER']}");     
}
@$id=trim(htmlspecialchars($_GET['id']));

function up($v, $g, $type) {
  global $vor_centr;
  global $gold;
  global $valid_user;
   
  if ($vor_centr == $v and $gold >= $g) {
   $result = mysql_query("UPDATE `user`
        SET `".$type."_centr`=(".$type."_centr + 5),`gold`=(gold - ".$g.")
         WHERE `username` ='".$valid_user."'");
   if ($result) {
    return true;
   } else {
    die(mysql_error());
   }
  }
}

if (isset($id)) {
  switch($id) {
   case 1:
    $num = 10;
    $g = 1000;
    while ($num <= 100) {
     up($num, $g, "vor");
     $num += 5;
     $g += 4000;
    }
    break;
   case 2:
    $num = 10;
    $g = 1000;
    while ($num <= 100) {
     up($num, $g, "sab");
     $num += 5;
     $g += 4000;
    }
    break;
  }
}

Код на работоспособность не проверял, написал абстрактно. Так что если что то не будет работать, то пиши, подправим вместе.
AssasinДата: Четверг, 16 Июня 2011, 20:44 | Сообщение # 230 | Тема: Увеличение параметров
web-coder
Сейчас нет на сайте
Выложи код, может и поможем.
AssasinДата: Четверг, 09 Июня 2011, 09:59 | Сообщение # 231 | Тема: Уроки по созданию браузерной игры
web-coder
Сейчас нет на сайте
Вероятно версия MySQL старая. Попробуй вместо TYPE=MyISAM написать ENGINE=MyISAM
AssasinДата: Вторник, 07 Июня 2011, 08:35 | Сообщение # 232 | Тема: Бесплатные видео курсы
web-coder
Сейчас нет на сайте
makco134, попробуй так
Code

<?php
require_once 'engine/connect.php';

    $query = "SELECT * FROM `".GAME_TABLES_PLAYER."` WHERE `PlayerName` = 'test'";
    $result = mysql_query ($query) or die (mysql_error());
    $player = mysql_fetch_array($result);

    echo $player['PlayerName'].'<br>';
    echo 'Ваш ИД:'.$player['PlayerID'].'<br>';
    echo $player['PlayerEmail'];

?>
AssasinДата: Вторник, 07 Июня 2011, 08:31 | Сообщение # 233 | Тема: Бесплатные видео курсы
web-coder
Сейчас нет на сайте
Quote (Arhangel)
ещё одно правило - необязательное, но его следует придерживаться во избежание появления ошибок: Имена полей и таблиц следует заключать в обратные одинарные кавычки - "`"

Согласен, иначе mysql может посчитать что это не имя а функция и попытается выполнить её в итоге будет ошибка.
AssasinДата: Вторник, 24 Мая 2011, 22:02 | Сообщение # 234 | Тема: Модульная система, и защита!
web-coder
Сейчас нет на сайте
Тему почистил, разбирайтесь в ЛС, аське, скайпе и пр.
AssasinДата: Воскресенье, 22 Мая 2011, 13:13 | Сообщение # 235 | Тема: Счетчик
web-coder
Сейчас нет на сайте
Создать файл с кодом отмены неприкосновенности и поставить его на cron
AssasinДата: Воскресенье, 22 Мая 2011, 11:39 | Сообщение # 236 | Тема: Как выбрать несколько значений
web-coder
Сейчас нет на сайте
Уважаемые следим за словами.
AssasinДата: Среда, 18 Мая 2011, 16:17 | Сообщение # 237 | Тема: [PHP]значение из удаленного ini файла
web-coder
Сейчас нет на сайте
Code

<?php
# Задача: нужно найти в файле в [секция2] значение ключ2
$file = "http://localhost/shell/file.ini"; # Путь к файлу
$file_ = file($file); # Выбираем файл для чтения
$string = ""; # Переменная содержащая весь ini файл
$section_search = false; # Переменная для записи нужно нам секции
$section = ""; # Переменная в которой будет состоять нужная нам секция
$key = ""; # Переменная в которой будет состоять наш ключ
foreach ($file_ as $line) { # Начинаем читать файл
  $string .= $line;  
  if (preg_match("/(\[секция2\])/",$string)) { # Если нашли нужную нам секцию начинаем запись этой секции
   $section_search = true;
  }
  if (preg_match("/(\[секция3\])/",$string)) { # Если нашли секцию следующую после нужной нам секции, то прекращаем запись
   $section_search = false;
  }
  if ($section_search == true) { # Записываем секцию
   $section .= $line;
  }
}
$key = preg_match("/(ключ2=)([\S]+)(\n)/",$section,$match); # Ищем нужный ключ
if ($key) { # Если нашли, то выводим на экран
  echo $match[2];
}
?>
AssasinДата: Вторник, 17 Мая 2011, 16:33 | Сообщение # 238 | Тема: Рюкзак, профиль
web-coder
Сейчас нет на сайте
wInDx, ну и что? Хочешь сказать что функции в php другие используются? Теже самые. Вон Сережка тебе по теме отписал.
AssasinДата: Четверг, 12 Мая 2011, 18:53 | Сообщение # 239 | Тема: Модульная система, и защита!
web-coder
Сейчас нет на сайте
wInDx по поводу защиты, делай всегда проверки. Пример бить врагов в локе 2:
Если игрок находится в локе 2, то врагов бить можно.
Получается игрок находящийся в любой другой локации кроме 2 врагов бить не может. Это елементарная проверка.
По поводу "модульной системы", то это можно сделать так:
Code

<?php
$page = htmlspecialchars($_GET['p']);

$page = preg_replace('/[^a-z0-9\&\=]/','',$page);
if (isset($page))
{
    switch($page)
    {
       case 'home': require('index.php');
       case 'reg': require('registration/reg.php');
    }
}
?>

Вводишь в браузерной строке localhost/?p=reg и видишь свою страничку регистрации.
AssasinДата: Четверг, 12 Мая 2011, 18:43 | Сообщение # 240 | Тема: Бан лог
web-coder
Сейчас нет на сайте
Cannabis - 20 дней: реклама, нарушение авторских прав.
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг