Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Форум для новичков » скрипты по подгрузке API WoW


скрипты по подгрузке API WoW

Сообщений 1 страница 20 из 96

1

форум: http://blackteam.mmohost.ru/

Задача №1: Вкорячивание импорта аватарок (Character Profile API)

http://blackteam.mmohost.ru/profile.php?id=2

сейчас в поле вкорячивается код вида:

<a href="http://eu.battle.net/wow/ru/character/%D0%BF%D0%BE%D0%B4%D0%B7%D0%B5%D0%BC%D1%8C%D0%B5/%D0%A2%D1%80%D1%83%D0%B5%D1%80/simple" title="оружейная"> <img alt="1" src="http://eu.battle.net/api/wow/character/deepholm/77/34083661-avatar.jpg"> </a>

красное - ссылка на "оружейную",
она вида http://eu.battle.net/wow/ru/character/название сервера/имя персонажа/simple

синее - это тег, для выделение рамки аватарок (он нужен позарез), 1 - синее, 2 - зелененькое, отсутствие тега - стандартное

зеленое+розовое - картинка аватарки.
зеленое - стандартное начало ссылки для европейских серверов ВоВ.
розовое - картинка, аватары, которую можно извлечь из файла с данными перса: http://eu.battle.net/api/wow/character/deepholm/Труер
ссылка персональная у игроков, добывается аналогичным образом: http://eu.battle.net/api/wow/character/название сервера/имя персонажа
в файле следующее:

{"lastModified":1414177732000,"name":"Труер","realm":"Deepholm","battlegroup":"Sturmangriff / Charge","class":3,"race":8,"gender":1,"level":90,"achievementPoints":17555,"thumbnail":"deepholm/77/34083661-avatar.jpg","calcClass":"Y","totalHonorableKills":15444}

вот тот самый розовый кусок и приставляется к началу ссылки

хочется формировать код аватарки игроков не вручную, а методом записи названия сервера и имени персонажа в дополнительное поле.

знаю, что реально, но задачка для супер-апгрейженых скриптоделов...
заранее спс, если возьметесь.

документация

документация по API: http://blizzard.github.io/api-wow-docs/
для форума понадобится: Character Profile API или Guild Profile API

форумы:
http://us.battle.net/en/forum/15051532/ (актуальный новый форум)
http://us.battle.net/wow/en/forum/2626217/ (старый раздел)

0

2

Герда
Аватар которые в постах или в отдельной панельке?

0

3

Fover
которые в поле pa-fld2

0

4

Герда
Что-то я туплю.
Тебе надо вставить в fld2 инфу после которой ава должна автоматически менятся на аву юзера с батл нет?

0

5

Fover
да.
скрипт должен брать из доп.поля название серва и имя перса.
потом подставлять это в ссылки.
потом заменять инфу на код картинки.

<a href="http://eu.battle.net/wow/ru/character/%D0%BF%D0%BE%D0%B4%D0%B7%D0%B5%D0%BC%D1%8C%D0%B5/%D0%A2%D1%80%D1%83%D0%B5%D1%80/simple" title="оружейная"> <img alt="1" src="http://eu.battle.net/api/wow/character/deepholm/77/34083661-avatar.jpg"> </a>

кстати, можно сделать проще.
брать авы из такого файла: http://eu.battle.net/api/wow/guild/подземье/Чёрный отряд?fields=members&amp;jsonp=breturn

тоды название серва* и имя перса пойдет для ссылки на оружейную. а картинка будет выдираться по имени перса из файла гильдии.

*вся проблема в том, что в гильдии состоят игроки с ДВУХ серверов. а то было бы проще - везде бы писалось deepholm

Отредактировано Герда (Сб, 25 Окт 2014 02:49:43)

0

6

Герда
Сначала попробуй открыть эту картинку.

0

7

<script type="text/javascript">
var bfld = 1; // номер дополнительного поля
$('.post-author').each(function() {
  var data = $(this).find('.pa-fld'+bfld).text().split(': ')[1];
  var realm = data.split(',')[0];
  var hero = data.split(',')[1];
  var tptl = $(this).find('.pa-title');
  $.get('http://s1.youbb.ru/gerda/wow.php', { r: realm, h: hero }, function(data) {
    tptl.after('<li class="pa-avatar item2"><a href="http://eu.battle.net/wow/ru/character/'+realm+'/'+hero+'/simple" title="Оружейная" target="_blank"><img alt="1" src="http://eu.battle.net/api/wow/character/'+data.thumbnail+'"></li>');
  });
});
</script>

В доп. поле вписываем реалм и нейм через запятую: подземье,Труер
Текущую аву скрываем в Администрирование - Поля профиля, новая будет отображаться сразу после статуса. Доп. поле можешь скрыть в css .pa-fld1 {display: none; }

+1

8

Fover написал(а):

Сначала попробуй открыть эту картинку.

сори, ошиблась в ссылке:
http://eu.battle.net/static-render/eu/deepholm/77/34083661-avatar.jpg
поправила ссылку в скрипте. пашет: http://oaotr.0pk.ru/viewtopic.php?id=27#p311

Fover написал(а):

http://s1.youbb.ru/gerda/wow.php

любопытно - эт что за ссыль?

штука работает хорошо, но на основном форуме конфликтует с твоим скриптом ссылок около ника... :'(
http://blackteam.mmohost.ru/

Код:
<!-- замена слов + ссылки на контакты около ника -->
<script>
(function () {

      function awards_spoiler() {

<!-- Универсальный скрипт замены. -->
function UniverСhange(selektor,changed,substitute){
$(selektor).each(function(){if ($(this).parent().html()!=null){if($(this).parent().html().indexOf(changed)!=-1){
$(this).parent().html($(this).parent().html().replace(changed,substitute));};};});}
UniverСhange("li#navuserlist","Участники","Форумчане"); 
UniverСhange("#profile #profilenav .item4","Аватар","Фото"); 
UniverСhange("#profile .datafield","аватар","Фото"); 
UniverСhange("#profile #profile4 fieldset legend span","Настройка отображения аватара","Настройка отображения Фото");
UniverСhange("#profile #profile4 .datafield","Загрузить аватар","Загрузить фото");
UniverСhange("#profile #profile4 .datafield","Изменить аватар","Изменить фото");
UniverСhange("#profile #profile4 .datafield","Удалить аватар","Удалить фото");
UniverСhange("#profile #profile4 label","Использовать аватар","Использовать фото");
UniverСhange("#viewprofile #profile-left","(Нет аватара)","Нет фото");
UniverСhange("#pun-ulinks li.item2 a","Активные темы","Сообщения за сегодня");
UniverСhange("#pun-ulinks li.item5 a","Подписка","Избранные темы");
UniverСhange(".subscribelink a","Подписаться и отслеживать тему","Добавить тему в избранное");
UniverСhange(".subscribelink a","Отписаться","Удалить из избранного");
UniverСhange("#pun-ulinks li.item7 a","Уведомления","Мои уведомления");
UniverСhange("#pun-ulinks li.item6 a","Всё прочитано","Отметить все прочитанным");
UniverСhange("#login .inputfield label","Имя","Логин");
UniverСhange("#register .inputfield label","Имя","Логин");
UniverСhange("#register  fieldset legend span","Введите имя пользователя длиной от 2 до 25 символов","Введите никнейм пользователя длиной от 2 до 25 символов");
UniverСhange("#profile .inputfield label","Имя","Логин");
UniverСhange("#profile  fieldset legend span","Имя, пароль и e-mail","Логин, пароль и e-mail");
UniverСhange(".stickytext","Важно:","|Прикреплено|");
UniverСhange(".closedatafield","Закрыта","<img src=/files/0012/ad/ab/46215.png>");
UniverСhange(".forum .tclcon","[","<img src=/files/0012/ad/ab/70171.png>");
UniverСhange(".forum .tclcon","]","");
UniverСhange(".forum th.tcl","Тема","Тема <span class=byuser>Автор</span>");
UniverСhange(".postlink a","Новая тема","<span class=newtop></span>");
UniverСhange(".postlink a","Новый опрос","<span class=newques></span>");
UniverСhange(".linkst .pagelink","Страница:","<img src=/files/0012/ad/ab/70171.png>  Страница:");
UniverСhange(".postlink a","Ответить","<span class=newpost></span>");
UniverСhange(".pl-email a","Профиль","Посмотреть профиль");
UniverСhange(".pl-email a","ЛС","Написать Личное Сообщение");
UniverСhange(".pl-email a","E-mail","Отправить E-mail");
UniverСhange(".pl-website a","Вебсайт","Посмотреть Вебсайт");
<!-- цветовыделение статусов -->
UniverСhange(".pa-title","Капитан","<font color='#24c6f1'>Капитан</font>");
UniverСhange(".pa-title","Лейтенант","<font color='#24c6f1'>Лейтенант</font>");
UniverСhange(".pa-title","Летописец","<font color='#719b31'>Летописец</font>");
<!--  универсальный скрипт замены  END. -->

<!-- ссылки на контакты около ника -->
$('#pun-viewtopic .post').each(function() {
  if($(this).find('.pl-email').length && GroupID != 3) {
    var a = $('<span class="platz"></span>').appendTo($(this).find('.pa-author a'));
    var apl = a.position().left+3, apt = a.position().top;
    $(this).find('.pa-author').after(' <span style="position:absolute;top:'+apt+'px;left:'+apl+'px; cursor:pointer;" class="open-p">&#9660</span><ul class="view-p"></ul>');
    $(this).find('.pl-email,.pl-website').attr('class', 'link').appendTo($(this).find('.view-p'));
    var thsc = $(this).find('.view-p');
    $(this).find('.open-p').click(function() {
      $(this).next().toggle();
    });
  }
});
      }
      var t=0;  var time_func = setInterval(function(){ t++;
          if (t>100) { clearInterval(time_func); return; } 
          if ($(".pa-awards").length) { clearInterval(time_func); awards_spoiler() }
      },100);
}())
  </script>

0

9

Герда
Попробуй Поставь перед скриптом замены без тегов, как и оный вставляла
(Ксать комменты
<!-- Универсальный скрипт замены. -->
из внутри скрипта лучше изъять
================
Ксать говновороты с этими скриптами из за привязки скриптов от Дуки к элементам минипрофиля,
Если бы привязался к основному элементу .post-author > ul  не было бы никакого говна

Отредактировано Deff (Сб, 25 Окт 2014 13:53:59)

0

10

Deff написал(а):

Попробуй Поставь перед скриптом замены, как и оный вставляла

тогда скрипт перестает работать

0

11

Deff написал(а):

внутри скрипта лучше изъять

изъяты.

попробовала еще раз подставить скрипт аватарок во внутрь - не канает.

0

12

Герда написал(а):

попробовала еще раз подставить скрипт аватарок во внутрь - не канает.

Э, попробуй вставить в самый конец, ппосле
<!-- ссылки на контакты около ника -->

$('#pun-viewtopic .post').each(function() {
  if($(this).find('.pl-email').length && GroupID != 3) {
    var a = $('<span class="platz"></span>').appendTo($(this).find('.pa-author a'));
    var apl = a.position().left+3, apt = a.position().top;
    $(this).find('.pa-author').after(' <span style="position:absolute;top:'+apt+'px;left:'+apl+'px; cursor:pointer;" class="open-p">&#9660</span><ul class="view-p"></ul>');
    $(this).find('.pl-email,.pl-website').attr('class', 'link').appendTo($(this).find('.view-p'));
    var thsc = $(this).find('.view-p');
    $(this).find('.open-p').click(function() {
      $(this).next().toggle();
    });
  }
});

0

13

Герда написал(а):

любопытно - эт что за ссыль?

Ссылка как ссылка)

0

14

Deff написал(а):

Э, попробуй вставить в самый конец, ппосле

с вставкой все работает.
если перементить во внутрь скрипт аватар батлнета - опять не все ломается

Deff написал(а):

Ксать говновороты с этими скриптами из за привязки скриптов от Дуки к элементам минипрофиля,
Если бы привязался к основному элементу .post-author > ul  не было бы никакого говна

да я уже думаю, не прикорячить ли награды скриптом. :sceptic:
меня еще бесит тот факт, что название модуля никакими средствами не изменить - скрипты замены слов не работают. на форуме русфф уже раза три верещала "как изменить название?". на ролевых форумах просят, шоб фишка называлась "инфентарь", на вот этом форуме, который ковыряю - должны быть "дстижения". но русфф-модуль показывает мне болт и говорит "хер тебе - только Награды, только хардкор" :sceptic:

0

15

Герда написал(а):

var thsc = $(this).find('.view-p');

Эту строку, кстати, можно убрать - не доглядел немного я.

0

16

оставлю здесь вновь доступ к админке вам, даб была возможность пощупать:

0

17

Смотри сейчас.

0

18

Fover написал(а):

Эту строку, кстати, можно убрать - не доглядел немного я.

убрана

Fover написал(а):

Ссылка как ссылка)

та прост главное шоб окончание картинок бралось именно с файла ротера гильдии или с персональных файлов чаров вида eu.battle.net/api/wow/character/название сервера/имя персонажа
ибо эти файлы автоматом обновляются. внешность персонажей меняется - аватарка меняется. народ может расу поменять в игре - сразу отобразится на форуме.

0

19

Fover написал(а):

Смотри сейчас.

пока нет эффекта.
корректно заполнено поле у Труер и у Гуру

0

20

Герда
Все обновляется с bnet`a)

0


Вы здесь » Единый форум поддержки » Форум для новичков » скрипты по подгрузке API WoW