Виртуальные деньги для uCoz

SUAREZ добавил 1402758955 в раздел UCOZ Пользователи
С помощью данного не хитрого решения вы сможете использовать виртуальные деньги на вашем сайте uCoz.

Около двух лет назад, раскручивая один игровой форум, я постоянно придумывал различные фишки, чтобы удивлять своих пользователей. И вот однажды пришла мысль ввести на портал виртуальную денежную систему или систему баллов. Конечно, лучше всего придумать ей оригинальное название, я додумался только до "либербаксов" (действие игры, которой и был посвящен портал, проходили в Либерти-сити). В данном материале мы с вами и разберем установку такой незамысловатой системы на свой сайт.

Для этого скрипта нам нужно одно единственное поле, которое может отредактировать любой пользователь (ICQ, Skype, MSN, Yahoo и т.д.). В данном материале будем использовать поле $MSN$. Первым делом зайдем в раздел "Замена стандартных надписей" и изменим его "снято денег", "снято баллов" и т.п. Как это ни странно, поле будет использоваться для хранения снятых баллов, а не для хранения текущих.

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

Скрипт не использует никаких других дополнительных модулей, но и функциональность его не большая (только администратор может изменять количество баллов). С использованием других модулей уже существуют различные решения.

Установка:

1. Самым первым делом заходим в ПУ » Пользователи » Форма редактирования персональной информации, находим там <?if($MSN_FL$)?> и заменяем на <?if($GROUP_ID$==4)?>. Теперь отредактировать количество снятых денег может только администратор портала.

2. Теперь идем в ПУ » Пользователи » Форма регистрации локальных пользователей, находим опять-же <?if($MSN_FL$)?> и <?endif?>, и удаляем все, что находится внутри этих тегов.

3. Остались последние пункты, которые связаны с настройками на персональной странице. В месте, где бы хотели выводить количество денег на счету, вставьте следующий код:
<div id="block25" class="udtb"><div class="udtlb">юМани:</div> <div id="coin"></div></div> 
<div id="countmoney" style="display:none">0</div> 
<div id="spentmoney" style="display:none">$_MSN$</div>
Далее, необходимо подключить сам скрипт подсчета количества юМани и красивого вывода в виде монеток:

<script type="text/javascript">
 <?if($_MSN$="")?>t=0<?else?>t=$_MSN$<?endif?> 
 str=$_FORUM_ENTRIES$*3+$_COM_ENTRIES$*2+$_LOAD_ENTRIES$*10+$_NEWS_ENTRIES$*6+$AWARDS$*2+$_REPUTATION$-t;
 $("#countmoney").html(str);
 $(document).ready(function(){str2="";
 var amount = [10,50,100,300];
 var image = ["http://updatesite.ru/image/coin/10.png","http://updatesite.ru/image/coin/50.png","http://updatesite.ru/image/coin/100.png","http://updatesite.ru/image/coin/300.png"];
 str=(Math.round(str/10))*10;
 if (str<10) $("#umani").hide(); 
 for(i=amount.length-1; i>=0;i--) {k=amount[i];c=0; while (str >= k) {c++;str -= k;}if (c!=0) str2="<div class='coin' style='background-image: url("+image[i]+")'><div>"+c+"</div></div>"+str2;}
 str2=str2+"<div href='javascript://' onclick='new _uWnd.alert("За активность на сайте вы получаете <b>юМани</b>","Монетки за активность",{w:400,h:60,tm:3500,close:1})' title='Монетки за активность на сайте' class='coin' style='cursor: pointer; background-image: url(http://updatesite.ru/image/coin/0.png)'></div>"
 $("#coin").html(str2);
 });
</script>
<style>
 .coin{height: 32px; width: 29px; margin-right:5px; position: relative; display:inline-block;}
 .coin div{padding: 1px 2px; border-radius: 1px; background: rgba(0,0,0,0.80); color: #fff; font: bold 9px/9px "Tahoma"; right:2px; top:2px; position: absolute; display:inline-block;}
</style>

str=$_FORUM_ENTRIES$*3+$_COM_ENTRIES$*2+ $_LOAD_ENTRIES$*10+$_NEWS_ENTRIES$*6 +$AWARDS$*2+$_REPUTATION$-t;

В переменную "str" как раз и записывается количество текущих денег. Думаю, формулу разбирать не стоит, и так все понятно (t - количество снятых денег). В массиве "amount" элементы содержат номинал монеток, а в "image" - путь к изображениям. В конце материала прикреплен psd-исходник монетки, так что сможете без проблем изменить и цвет, и цифру.

4. Для быстрого изменения количества денег, подключим скрипт, к сожалению, не знаю, кем написанный, который позволяет без перезагрузки страницы изменять данные. Первым делом в месте, где хотите видеть ссылку на изменение, вставляем следующий код:

<?if($GROUP_ID$==4)?><a href="#" onclick="editM(); return false;">ред.</a><?endif?>

После вставляем сам скрипт для редактирования. Теперь при нажатии на ссылку будет выскакивать окошко, куда вы сможете ввести количество денег, которое необходимо снять.

<?if($GROUP_ID$==4)?> 
<script type="text/javascript" src="http://updatesite.ru/js/useredit2.js"></script>
<script type="text/javascript" >
function editM () { current=$("#spentmoney").html(); var name = prompt("Сколько денег снято",current); if (name) { userData2.edit($_USER_ID$,{msn: name}, function (errorText) { _uWnd.alert(errorText ? errorText : 'Данные успешно изменены!', 'Редактирование', {w: 250, h: 75, tm: 4500}); if (!errorText) {$("#spentmoney").html(name);} }); } }; </script> <?endif?>

Установка завершена!

Дополнительно: Вот парочка идей, что можно предложить пользователям за деньги: какой-нибудь небольшой блок с рекламой (в мини-чате под сообщениями пользователя, изображение 88х31 или 468х60 и т.п.), смена группы, смена ника, персональный титул, цвет ника.

Скачать "Виртуальные деньги для uCoz" [482.5Kb]
Скачиваний: 14
+14
Теги: монетки, скрипт денег, юмани, баллы, деньги
Автор: SUAREZ
Источник: http://updatesite.ru
Зарегистрируйтесь или авторизуйтесь, чтобы добавлять комментарии, оценивать материалы и сохранять их в личном кабинете.
Вы не можете добавлять комментарии

1 комментариев

entry
Свернуть
Развернуть мини-чат
0