Суббота, 20 Апреля 2024, 10:28

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Записи участника » scorpius1100 [8]
Результаты поиска
scorpius1100Дата: Воскресенье, 27 Февраля 2011, 19:17 | Сообщение # 1 | Тема: Урок по созданию браузерной игры № 12
был не раз
Сейчас нет на сайте
Ну для кого нет смысла, а для кого есть)) На один комментарий выше есть описание схожее к моему скрипту от vovnet) Да и у меня комментарии в скрипте есть и думаю там все понятно))) Я сам не профи в этом деле.

Исправил грамматические ошибки. Будь внимательнее.
Большое количество скобок показывает твое несерьезное отношение к делу.

Don_Vito

Сообщение отредактировал scorpius1100 - Четверг, 24 Февраля 2011, 12:35
scorpius1100Дата: Среда, 23 Февраля 2011, 22:12 | Сообщение # 2 | Тема: Урок по созданию браузерной игры № 12
был не раз
Сейчас нет на сайте
Короче народ мне надоело ждать ! Как я понял Ассасин не доделает уроки!
Короче вот вам бой!
С ВАС +СЫ☺☺☻☻
Надеюсь разрабы Блиц Скулл простят меня т.к некоторые материалы взяты у них)☺☻☺☺☻☻ tongue
/*Справочник зон! ну куда бить будем☺*/
CREATE TABLE `body_zones` (
`BZ_ID` SMALLINT(1) unsigned NOT NULL DEFAULT 0,
`BZ_NAME` CHAR(20) NOT NULL DEFAULT '',
PRIMARY KEY (`BZ_ID`)
) TYPE=MyISAM;
INSERT INTO body_zones(BZ_ID,BZ_NAME) values(1,'Голова');
INSERT INTO body_zones(BZ_ID,BZ_NAME) values(2,'Торс');
INSERT INTO body_zones(BZ_ID,BZ_NAME) values(3,'Пояс');
INSERT INTO body_zones(BZ_ID,BZ_NAME) values(4,'Ноги');
CREATE TABLE `battle` (
`BAT_ID` BIGINT unsigned NOT NULL auto_increment, /*ID поединка*/
`USER1_ID` bigint(20), /*ID 1 игрока*/
`USER2_ID` bigint(20), /*ID 2 игрока*/
`TIMEOUT` SMALLINT(2), /*Таймаут*/
`STARTTIME` DATETIME, /*время начала поединка*/
`M1` SMALLINT(1) unsigned NOT NULL DEFAULT 0, /*Ход первого*/
`M2` SMALLINT(1) unsigned NOT NULL DEFAULT 0, /*Ход второго*/
`LASTMOVE` DATETIME, /*время последнего хода*/
`STATUS` SMALLINT(1), /*статус поединка 1-идет,2-завершен*/
PRIMARY KEY (`BAT_ID`)
) TYPE=MyISAM;
/* Таблица детализации поединка один на один */
CREATE TABLE `battledetails` (
`BATDET_ID` BIGINT unsigned NOT NULL auto_increment, /*ID строчки хода*/
`BAT_ID` BIGINT unsigned NOT NULL DEFAULT 1, /*ID поединка*/
`USERID` bigint(20), /*ID игрока сделавшего ход*/
`ATTACK` SMALLINT(1) unsigned NOT NULL DEFAULT 0, /*Зона атаки*/
`DEFEND` SMALLINT(1) unsigned NOT NULL DEFAULT 0, /*Зона защиты*/
`MESSAGE` CHAR(255) NOT NULL DEFAULT '', /*Описание действия*/
PRIMARY KEY (`BATDET_ID`)
) TYPE=MyISAM;
// узнаем каким номером мы находимсяя в строке боя 1 или 2, кто наш противник
// и кто уже успел сделать ход ?
$query = "SELECT BAT_ID,CHAR1_NAME,CHAR2_NAME,M1,M2 FROM battle WHERE CHAR1_NAME='$aNickName' OR CHAR2_NAME='$aNickName'";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
$aRow = mysql_fetch_array( $result);
$aBattleID = $aRow["BAT_ID"];
$aChar1 = $aRow["CHAR1_NAME"];
$aChar2 = $aRow["CHAR2_NAME"];
$aMove1 = $aRow["M1"];
$aMove2 = $aRow["M2"];
// определим некоторые параметры 1 и 2
// 1
$query = "SELECT * FROM users WHERE Nick_Name='$aChar1'";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
$aRow = mysql_fetch_array( $result);
$aStrength1 = $aRow["Character_Strength"];
$aEndurance1 = $aRow["Character_Endurance"];
$aCurHealth1 = $aRow["Character_CurHealth"];
// 2
$query = "SELECT * FROM users WHERE Nick_Name='$aChar2'";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
$aRow = mysql_fetch_array( $result);
$aStrength2 = $aRow["Character_Strength"];
$aEndurance2 = $aRow["Character_Endurance"];
$aCurHealth2 = $aRow["Character_CurHealth"];
if ( $aNickName == $aChar1 ){ // Мы под первым номером

$aShowEndurance1 = $aEndurance1;
$aShowHealth1 = $aCurHealth1;
$aShowEndurance2 = $aEndurance2;
$aShowHealth2 = $aCurHealth2;

$aOrder = 1;
$aOpponentNick = $aChar2;
// Проверим походил ли соперник
if (($aMove1 == 1) & ($aMove2 == 0)){
print('<SCRIPT>location.href="wait.phtml?NickName='.$aNickName.'&bat_id='.$aBattleID.'";</SCRIPT>');
}
if ($aMove1 == 0){
// мы не делали ход, делаем его сейчас!
if (!empty($_POST['attack'])) {
$aAttack = $_POST['attack'];
$aDefend = $_POST['defend'];
$query = "INSERT INTO battledetails (BAT_ID,CHAR_NAME,ATTACK,DEFEND) values ($aBattleID,'$aNickName',$aAttack,$aDefend)";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
// установим флаг хода для 1 игрока
$query = "UPDATE battle set M1=1 where CHAR1_NAME='$aNickName'";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
print('<SCRIPT>location.href="battle.phtml?NickName='.$aNickName.'";</SCRIPT>');
}
}
if (($aMove1 == 1) & ($aMove2 == 1)){ // расчитываем damage для обоих персонажей
CalcDamage($aChar1,$aChar2,$aBattleID); // считаем повреждения
print('<SCRIPT>location.href="battle.phtml?NickName='.$aNickName.'";</SCRIPT>');
}

} else { ....
function CalcDamage($aChar1,$aChar2,$aBattleID){
// обнуляем флаги ходов игроков
$query = "UPDATE battle set M1=0, M2=0 where BAT_ID=$aBattleID";
$result = mysql_query($query) or die("Query failed : " . mysql_error());

// параметры 1 игрока
$query = "SELECT * FROM users WHERE Nick_Name='$aChar1'";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
$aRow = mysql_fetch_array( $result);
$aStrength1 = $aRow["Character_Strength"];
$aCharLevel = $aRow["Character_Level"];
$aCurHealth1 = $aRow["Character_CurHealth"];
// параметры 2 игрока
$query = "SELECT * FROM users WHERE Nick_Name='$aChar1'";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
$aRow = mysql_fetch_array( $result);
$aStrength2 = $aRow["Character_Strength"];
$aCharLevel2 = $aRow["Character_Level"];
$aCurHealth2 = $aRow["Character_CurHealth"];

// кто куда ударил и что блокировал
// первый игрок
$query = "select * from battledetails WHERE CHAR_NAME='$aChar1' order by batdet_id DESC limit 1";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
$aRow = mysql_fetch_array( $result);
$aAttack1 = $aRow["ATTACK"];
$aDefend1 = $aRow["DEFEND"];
// второй игрок
$query = "select * from battledetails WHERE CHAR_NAME='$aChar2' order by batdet_id DESC limit 1";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
$aRow = mysql_fetch_array( $result);
$aAttack2 = $aRow["ATTACK"];
$aDefend2 = $aRow["DEFEND"];
// считаем повреждения, с учетом блоков
// куда бил игрок 1 и что блокировал игрок 2 ?

if ( ! Blocked($aAttack1,$aDefend2) ){
$aCurHealth2 = $aCurHealth2 - $aStrength1;
$aCurHealth2 = $aCurHealth2 < 0 ? 0 : $aCurHealth2;
$query = "UPDATE users set Character_CurHealth=$aCurHealth2 where Nick_Name='$aChar2'";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
}
// куда бил игрок 2 и что блокировал игрок 1 ?
if ( ! Blocked($aAttack2,$aDefend1) ){
$aCurHealth1 = $aCurHealth1 - $aStrength2;
$aCurHealth1 = $aCurHealth1 < 0 ? 0 : $aCurHealth1;
$query = "UPDATE users set Character_CurHealth=$aCurHealth1 where Nick_Name='$aChar1'";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
}
}
function Blocked($a,$d){
$def = array(1=>'12',2=>'23',3=>'34',4=>'41');
if( strpos($def[$d],$a) === false ){
$retv = false;
}else{
$retv = true;
}
return ($retv);
}
ВОТ ну както так )Думаю ошибки есть ну всерано хоть чтото ☺ Это бой ПВП А НЕ МОБОВСКИХ ХОТЯ МОЖНО ПОДРЕДАКТИРОВАТЬ И БУДЕТ МОБОВСКИЙ!!!

Сообщение отредактировал scorpius1100 - Среда, 23 Февраля 2011, 22:16
scorpius1100Дата: Среда, 23 Февраля 2011, 11:45 | Сообщение # 3 | Тема: Уроки по созданию браузерной игры
был не раз
Сейчас нет на сайте
Замени свою таблицу аватара вот на эту

CREATE TABLE `avatar` (
id_ava bigint(20) unsigned NOT NULL auto_increment,
gander SMALLINT(1),
vid SMALLINT(2),
path CHAR(32),
PRIMARY KEY (`id_ava`)
) TYPE=MyISAM;

scorpius1100Дата: Понедельник, 21 Февраля 2011, 13:08 | Сообщение # 4 | Тема: Для тех кто хочет создать свой травиан
был не раз
Сейчас нет на сайте
Полезно)
scorpius1100Дата: Понедельник, 21 Февраля 2011, 12:29 | Сообщение # 5 | Тема: Продам Браузерную Онлайн Ролевую Игру (MMORPG)
был не раз
Сейчас нет на сайте
А понятно) Просто щас изучаю уроки по браузерке от Блиц Скулл а на скринах похожий интерфейс))
Блин ещеб обновленные уроки от Блиц Скулл а то у мя старые(


Сообщение отредактировал scorpius1100 - Понедельник, 21 Февраля 2011, 12:30
scorpius1100Дата: Понедельник, 21 Февраля 2011, 00:17 | Сообщение # 6 | Тема: Продам Браузерную Онлайн Ролевую Игру (MMORPG)
был не раз
Сейчас нет на сайте
Игра на основе уроков от Blitz Scholl?
scorpius1100Дата: Воскресенье, 20 Февраля 2011, 15:44 | Сообщение # 7 | Тема: Уроки по созданию браузерной игры
был не раз
Сейчас нет на сайте
Assasin плиииззз доделай уроки cry
scorpius1100Дата: Воскресенье, 20 Февраля 2011, 14:47 | Сообщение # 8 | Тема: Пособие для начинающих разработчиков Браузерных игр
был не раз
Сейчас нет на сайте
Отлично ток Assasin влючи сюда еще ссылочку к своим урокам))
Форум игроделов » Записи участника » scorpius1100 [8]
  • Страница 1 из 1
  • 1
Поиск:

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