20.03.2011, 14:58 | #1 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Zero honor script
Вот немного модернезировал под свои нужды,
Но возникла пара вопросов. Есть желание прикрутить к рангам циферным - обозначение картинкой, классической той самой. Там на всех этих рядовых и сержантов. Хотел узнать у старожил как привязать бы ид определенного ранга к картинке. Проверка по номеру там или как? Заранее извиняюсь за нубофермский вопрос но надеюсь кто сможет объяснить, банального примера или ссылки на место с документацией по вопросу достаточно. ------ Обновлен в рабочем варианте, всем спасибо за помощь. Код:
<?php $mysql_link = mysql_connect("localhost", "логин", "пароль") or die ("Could not connect."); mysql_query("SET NAMES 'utf8'"); mysql_select_db("characters", $mysql_link) or die ("Unknown DB."); define('honor_highest_rank', 1517); // for 2.4.3 use 1517, for 3.0.3 use 1602 ?> <html http-equiv="content-type" content="text/html;charset=utf-8"> <table align='center' border='0'> <font face="Scurri"> <tr> <td width='125' align='center'> <b>Имя </b></td> <td width='125' align='center'> <b>Звание </b></td> <td width='125' align='center'> <b>Почетные<br>убийства</b></td> </tr> <?php $pvpquery = mysql_query("SELECT `name`, `race`, `class`, `honor_highest_rank`, `stored_honorable_kills` FROM `characters` WHERE CAST( SUBSTRING_INDEX(SUBSTRING_INDEX(`honor_highest_rank`, ' ', ".(KILLS+1)."), ' ', -1) AS UNSIGNED) >0 ORDER BY CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(`honor_highest_rank`, ' ', ".(KILLS+1)."), ' ', -1) AS UNSIGNED) DESC LIMIT 5"); while($chardata = mysql_fetch_assoc($pvpquery)){ echo "<tr><td align='center'>".$chardata["name"]."</td>"; echo "<td align='center'><img src='images/".(($chardata["race"]%2)?"a":"h")."rank_".$chardata["honor_highest_rank"]."'></td>"; echo "<td align='center'>".$chardata["stored_honorable_kills"]."</td></tr>"; } ?> </font> </table> Последний раз редактировалось BloodWarrior; 03.04.2011 в 15:07. |
20.03.2011, 19:48 | #2 |
Ученый
|
Код:
echo "<img src='images/rank_" . $chardata['honor_hightest_rank'] . ".gif'>"; rank_2.gif ... |
Пользователь сказал cпасибо: | BloodWarrior (21.03.2011) |
21.03.2011, 03:48 | #3 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Спс огромное)
Но с основными тегами оно конечно все ясно)) Другое дело как сделать проверку вот в этом вся загвоздка, все таки мы получаем из базы числовое значение, и именно к полученным данным надо привязать автовыбор картинки. Последний раз редактировалось BloodWarrior; 21.03.2011 в 04:09. |
21.03.2011, 05:06 | #4 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Попробовал задать:
Код:
$i1 = "<img src='images/rank_1.gif'>"; $i2 = "<img src='images/rank_2.gif'>"; $i3 = "<img src='images/rank_3.gif'>"; $i4 = "<img src='images/rank_4.gif'>"; $i5 = "<img src='images/rank_5.gif'>"; $i6 = "<img src='images/rank_6.gif'>"; $i7 = "<img src='images/rank_7.gif'>"; $i8 = "<img src='images/rank_8.gif'>"; $i9 = "<img src='images/rank_9.gif'>"; $i10 = "<img src='images/rank_10.gif'>"; $i11 = "<img src='images/rank_11.gif'>"; $i12 = "<img src='images/rank_12.gif'>"; $i13 = "<img src='images/rank_13.gif'>"; $i14 = "<img src='images/bullet.gif'>"; Код:
if($chardata["honor_highest_rank"] > 13) { echo "<td align='center'>".$i14."</td>"; } попробовал задать через: Код:
if($chardata["honor_highest_rank"] = 1)($a=$i1); elseif($chardata["honor_highest_rank"] = 2)($a=$i1); elseif($chardata["honor_highest_rank"] = 3)($a=$i2); elseif($chardata["honor_highest_rank"] = 4)($a=$i3); elseif($chardata["honor_highest_rank"] = 5)($a=$i4); elseif($chardata["honor_highest_rank"] = 6)($a=$i5); elseif($chardata["honor_highest_rank"] = 7)($a=$i6); elseif($chardata["honor_highest_rank"] = 8)($a=$i7); elseif($chardata["honor_highest_rank"] = 9)($a=$i8); elseif($chardata["honor_highest_rank"] = 10)($a=$i9); elseif($chardata["honor_highest_rank"] = 11)($a=$i10); elseif($chardata["honor_highest_rank"] = 12)($a=$i11); elseif($chardata["honor_highest_rank"] = 13)($a=$i12); elseif($chardata["honor_highest_rank"] > 13)($a=$i13); echo "<td align='center'>".$a."</td>"; Так понял, $chardata["honor_highest_rank"] = 1 идет не проверка по числовому значению а true false кажись нет, хм |
21.03.2011, 07:34 | #5 |
Пользователь
Регистрация: 07.03.2010
Сообщений: 46
Сказал(а) спасибо: 15
Поблагодарили 53 раз(а) в 14 сообщениях
|
"=" в пхп означает присвоение переменной слева значение справа.
"==" - сравнение 2 значений игнорируя их тип, например: PHP код:
"===" - сравнение 2 значений c проверкой на тип, например: PHP код:
Последний раз редактировалось SergiK_KilleR; 21.03.2011 в 07:38. |
Пользователь сказал cпасибо: | BloodWarrior (21.03.2011) |
21.03.2011, 09:35 | #6 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Спасибо большое.
Помогло. Теперь возник более сложный вопрос, но не менее интересующий. ПВП ранги На вовхеде очень удобная страничка, ну вернее возвращенные ранги достаточно удобно нарисованы, с фоном для альянса и орды, собственно можно задать проверку на фракцию еще, теперь когда стало ясно как это делать, огромное спасибо SergiK_KilleR Но данные иконки очив защищены, через js или еще как не суть важно. Пробовал качать с помощью HTTrack и вебкопира, да и вообще по разному извращаться, не помогло. Может кто подскажет какой хороший вариант на скачку? Тулзу какую? Или проще скринить и фотошопить на основе скрина? |
21.03.2011, 10:45 | #7 |
Ученый
Регистрация: 02.04.2010
Сообщений: 237
Сказал(а) спасибо: 41
Поблагодарили 99 раз(а) в 44 сообщениях
|
А чем тебя оригинальные не устраивают допустим с воввики?
http://www.wowwiki.com/Honor_system_(pre-2.0)
__________________
SpellWork Qt4 |
21.03.2011, 11:04 | #8 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Так они конечно крутые и съедобные, на первую пору их прикрутил пока не сделаю то, что хотел.
Те ранги что на вовхеде в виде иконок сделаны на заднем фоне подкрашены согласно цвету фракции. Если добавить проверку на орда - альянс то можно и выводить разноцветный вариант рангов явно указывающий на фракцию. Т-е чтобы ранги можно было по фракции с первого взгляда. скрин ПЫСЫ не радикалит чтот) Последний раз редактировалось BloodWarrior; 21.03.2011 в 11:59. |
21.03.2011, 14:28 | #9 |
Пользователь
Регистрация: 07.03.2010
Сообщений: 31
Сказал(а) спасибо: 15
Поблагодарили 4 раз(а) в 3 сообщениях
Записей в дневнике: 1
|
рисуешь функцию,
определенное количество хонора или килов распределяешь по званиям, только не в виде текста, а картинку вставляешь. если это то, что тебе нужно. |
21.03.2011, 17:32 | #10 |
Гость
Сообщений: n/a
|
не знаю, чем там защищены эти иконки, тулза - Google Chrome
|
21.03.2011, 19:17 | #11 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Пасиб)) Уже достал))
ПЫСЫ: Незнаю насколько правильный пхп скрипт в плане написания получился. Но он в принципе работает, причем срабатывает как надо. Код:
<?php $mysql_link = mysql_connect("localhost", "root", "root") or die ("Could not connect."); mysql_query("SET NAMES 'utf8'"); mysql_select_db("characters", $mysql_link) or die ("Unknown DB."); define('honor_highest_rank', 1517); // for 2.4.3 use 1517, for 3.0.3 use 1602 ?> <html http-equiv="content-type" content="text/html;charset=utf-8"> <table align='center' border='0'> <font face="Scurri"> <tr> <td width='125' align='center'> <b>Имя </b></td> <td width='125' align='center'> <b>Звание </b></td> <td width='125' align='center'> <b>Почетные<br>убийства</b></td> </tr> <?php $pvpquery = mysql_query("SELECT `name`, `race`, `class`, `honor_highest_rank`, `stored_honorable_kills` FROM `characters` WHERE CAST( SUBSTRING_INDEX(SUBSTRING_INDEX(`honor_highest_rank`, ' ', ".(KILLS+1)."), ' ', -1) AS UNSIGNED) >0 ORDER BY CAST(SUBSTRING_INDEX(SUBSTRING_INDEX(`honor_highest_rank`, ' ', ".(KILLS+1)."), ' ', -1) AS UNSIGNED) DESC LIMIT 5"); while($chardata = mysql_fetch_assoc($pvpquery)){ echo "<tr><td align='center'>".$chardata["name"]."</td>"; echo "<td align='center'>"; if ($chardata["honor_highest_rank"] == 1 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_1'>"; if ($chardata["honor_highest_rank"] == 1 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_1'>"; if ($chardata["honor_highest_rank"] == 2 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_2'>"; if ($chardata["honor_highest_rank"] == 2 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_2'>"; if ($chardata["honor_highest_rank"] == 3 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_3'>"; if ($chardata["honor_highest_rank"] == 3 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_3'>"; if ($chardata["honor_highest_rank"] == 4 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_4'>"; if ($chardata["honor_highest_rank"] == 4 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_4'>"; if ($chardata["honor_highest_rank"] == 5 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_5'>"; if ($chardata["honor_highest_rank"] == 5 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_5'>"; if ($chardata["honor_highest_rank"] == 6 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_6'>"; if ($chardata["honor_highest_rank"] == 6 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_6'>"; if ($chardata["honor_highest_rank"] == 7 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_7'>"; if ($chardata["honor_highest_rank"] == 7 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_7'>"; if ($chardata["honor_highest_rank"] == 8 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_8'>"; if ($chardata["honor_highest_rank"] == 8 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_8'>"; if ($chardata["honor_highest_rank"] == 9 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_9'>"; if ($chardata["honor_highest_rank"] == 9 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_9'>"; if ($chardata["honor_highest_rank"] == 10 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_10'>"; if ($chardata["honor_highest_rank"] == 10 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_10'>"; if ($chardata["honor_highest_rank"] == 11 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_11'>"; if ($chardata["honor_highest_rank"] == 11 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_11'>"; if ($chardata["honor_highest_rank"] == 12 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_12'>"; if ($chardata["honor_highest_rank"] == 12 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_12'>"; if ($chardata["honor_highest_rank"] == 13 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_13'>"; if ($chardata["honor_highest_rank"] == 13 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_13'>"; if ($chardata["honor_highest_rank"] > 13 and $chardata["race"] == 1 || $chardata["race"] == 3 || $chardata["race"] == 5 || $chardata["race"] == 7) echo "<img src='images/arank_14'>"; if ($chardata["honor_highest_rank"] > 13 and $chardata["race"] == 2 || $chardata["race"] == 4 || $chardata["race"] == 6 || $chardata["race"] == 8) echo "<img src='images/hrank_14'>"; echo "</td>"; echo "<td align='center'>".$chardata["stored_honorable_kills"]."</td></tr>"; } ?> </font> </table> |
21.03.2011, 19:39 | #12 |
Гость
Сообщений: n/a
|
|
3 пользователя(ей) сказали cпасибо: |
21.03.2011, 20:05 | #13 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Спасибо))
Может пора заняться йогой?) В прочем между киокушином и ицюанем ее уже не вклинить) если только на воскресенье)) С другой стороны всегда есть к чему стремиться) |
21.03.2011, 22:27 | #14 | ||
Forum bot
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
|
Цитата:
Тулза - руки. По памяти: Открыть код, посмотреть каким стилем задается иконка. Открыть css, посмотреть откуда берется картинка. Перекачать по очереди два десятка картинок. Если этот алгоритм не прокатывает - изыскать свой, он окажется не сложнее. Цитата:
Ага, например - забить на китаизм-ипонизм, и завести себе нормальный доспех 15-16 века. Два-три бугурта "очко" (21х21) или десяток 5х5 - и сразу такое просветление наступает!!! Особенно когда откачают, и сидишь рихтуешь бацинет после молодецкого удара идиотской алебардой.
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки. |
||
22.03.2011, 04:42 | #15 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[10719][FIX] Quest honor reward | KiriX | Принятые патчи | 7 | 10.11.2010 23:00 |
[script] Обмен Арена-Хонор пойнтов (npc arena honor) | tempura | Патчи | 9 | 18.09.2010 12:33 |
Now BG honor marks not reawrded in BG | newsbot | CMaNGOS Commits | 0 | 08.04.2010 03:40 |
[9666] Check max. honor points on characteacter login. | newsbot | CMaNGOS Commits | 0 | 03.04.2010 12:30 |