Archived copy of war3source.com, the War3Source forum (2009–2020), rebuilt from the Internet Archive by wc3mods.net. This page was captured on 2012-09-22 (original capture). Forum · All archived topics · Wiki · Bug tracker · Blog
Chat

War3:Source
September 21, 2012, 10:08:29 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: Download: http://war3source.com/index.php?board=9.0
What is War3Source?: http://war3source.com/index.php?topic=200.0
Sample Stats: http://war3source.com/war3stats
Steam Community Group: http://steamcommunity.com/groups/war3source
War3Source SVN Checkout: http://ownageclan.com/svn/war3source/
War3Source servers: http://www.game-monitor.com/search.php?vars=war3_version=
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: [Russian]Несколько вопросов  (Read 289 times)
drembass
Newbie
*
Posts: 7


View Profile Email
« on: April 28, 2012, 02:19:11 PM »

Как сделать?
Чтобы вещи не пропадали после смерти. т.е были всегда, пока не заменят.
Увеличить количество доступных одновреммено вещей.
Вещи для определенных людей, по группам или флагам.
Увеличение получаемого опыта/золота у определенных людей/групп.
Увеличение количества максимального золота.

Не пишите сообщения типа "руками". Пишите по существу.
Logged
senator141
Newbie
*
Posts: 40


View Profile
« Reply #1 on: April 28, 2012, 11:42:51 PM »

"Увеличение получаемого опыта/золота у определенных людей/групп."

У меня есть , этот плагин.
Хочешь узнать больше пиши в ЛС
Logged
Frenzzy
Moderator
Full Member
*****
Posts: 217


337905984 frenzzy@live.ru
View Profile WWW
« Reply #2 on: April 29, 2012, 12:52:23 AM »

Как сделать?
Руками!

Чтобы вещи не пропадали после смерти. т.е были всегда, пока не заменят.
Убрать в коде всех необходимых артефактов что-то вроде этого:
public OnWar3EventDeath(client) { War3_SetOwnsItem(client, ITEM_NAME, false); }

Увеличить количество доступных одновреммено вещей.
Добавить в конфиг (war3source.cfg) эту строчку:
war3_max_shopitems "3" // Количество артефактов, которое может одновременно носить с собой один игрок

Вещи для определенных людей, по группам или флагам.
Можно, к примеру, добавить в код необходимых артефактов что-то вроде:
public OnWar3Event(W3EVENT:event, client) {
    if (event == CanBuyItem) {
        new item = W3GetVar(EventArg1);
        if (item == ITEM_NAME) { // Если это текущий предмет
            if (client == КЛИЕНТ_КОТОРОМУ_НЕЛЬЗЯ_ПОКУПАТЬ) { // Если этому игроку нельзя купить
                War3_ChatMessage(client, "Вам нельзя покупать этот предмет");
                W3SetVar(EventArg2, 0);
            }
        }
    }
}

Увеличение получаемого опыта/золота у определенных людей/групп.
Создать свой плагин, а в нем что-то вроде:
public OnWar3Event(W3EVENT:event, client) {
    if (event == OnPreGiveXPGold) {
        if (client == КЛИЕНТ_КОТОРЫЙ_ПОЛУЧИТ_БОЛЬШЕ) { // Если этому игроку нужно дать больше опыта и золота
            new xp = W3GetVar(EventArg2);
            new gold = W3GetVar(EventArg3);
            W3SetVar(EventArg2, RoundToFloor(xp * 2.0)); // В 2 раза больше опыта
            W3SetVar(EventArg3, RoundToFloor(gold * 3.0)); // В 3 раза больше золота
        }
    }
}

Увеличение количества максимального золота.
Добавить в конфиг (war3source.cfg) эту строчку:
war3_maxgold "1500" // Игроки не смогут заработать золота больше, чем указано здесь

Не пишите сообщения типа "руками". Пишите по существу.
На первый вопрос по-другому не ответить..
« Last Edit: April 29, 2012, 12:58:31 AM by Frenzzy » Logged

O_o
Divix
Sr. Member
****
Posts: 280


View Profile Email
« Reply #3 on: April 29, 2012, 03:58:31 AM »

Перед тем как задавать вопросы по настройке сервера, стоит ознакомиться с самой настройкой http://war3source.com/index.php?topic=1047.0
И единственное, что могу добавить к ответам: в англ. части форума где-то был плагин для выдачи опр. группам (по клане тэгу) увеличенного опыта.
Logged
drembass
Newbie
*
Posts: 7


View Profile Email
« Reply #4 on: April 29, 2012, 05:31:11 AM »

где найти .sp стандартных вещей?
Logged
senator141
Newbie
*
Posts: 40


View Profile
« Reply #5 on: April 29, 2012, 05:41:10 AM »

где найти .sp стандартных вещей?

Их нету
Logged
kvip
Newbie
*
Posts: 17


View Profile Email
« Reply #6 on: April 29, 2012, 07:23:27 AM »

А возможно ли  это реализовать с помощью mysql? Что бы артефакты хранились в базе данных и игроки даже при выходе с сервера могли бы не потерять свои предметы.
Logged
senator141
Newbie
*
Posts: 40


View Profile
« Reply #7 on: April 29, 2012, 07:45:16 AM »

А возможно ли  это реализовать с помощью mysql? Что бы артефакты хранились в базе данных и игроки даже при выходе с сервера могли бы не потерять свои предметы.

А смысл?
Logged
drembass
Newbie
*
Posts: 7


View Profile Email
« Reply #8 on: April 29, 2012, 08:46:59 AM »

такс... вещи сделал, но что зделать чтобы они не пропадали когда выходишь с сервера?
Logged
senator141
Newbie
*
Posts: 40


View Profile
« Reply #9 on: April 29, 2012, 09:24:37 AM »

такс... вещи сделал, но что зделать чтобы они не пропадали когда выходишь с сервера?


http://war3source.com/index.php?topic=1203.msg8420#msg8420

Cмотри лучше, не ленись.
Logged
Frenzzy
Moderator
Full Member
*****
Posts: 217


337905984 frenzzy@live.ru
View Profile WWW
« Reply #10 on: April 29, 2012, 11:25:03 AM »

где найти .sp стандартных вещей?
..\addons\sourcemod\scripting\War3Source_ShopItems.sp
..\addons\sourcemod\scripting\War3Source_ShopItems2.sp

А возможно ли  это реализовать с помощью mysql? Что бы артефакты хранились в базе данных и игроки даже при выходе с сервера могли бы не потерять свои предметы.
ShopItems2 так и работает
Logged

O_o
drembass
Newbie
*
Posts: 7


View Profile Email
« Reply #11 on: April 29, 2012, 11:53:11 AM »

удалил что написали.. вещи пропадают когда перезаходишь на серв. после смерти остаються
 код вещи:





#pragma semicolon 1

#include <sourcemod>
#include "W3SIncs/sdkhooks"
#include "W3SIncs/War3Source_Interface"

new thisItem;
new String:helmSound0[]="physics/metal/metal_solid_impact_bullet1.wav";
new String:helmSound1[]="physics/metal/metal_solid_impact_bullet2.wav";
new String:helmSound2[]="physics/metal/metal_solid_impact_bullet3.wav";
new String:helmSound3[]="physics/metal/metal_solid_impact_bullet4.wav";

public Plugin:myinfo= {
   name="War3Source Shop - Helm",
   author="Ownz (DarkEnergy)",
   description="War3Source",
   version="1.0",
   url="http://war3source.com/"
};



public OnPluginStart()
{
   War3_PrecacheSound(helmSound0);
   War3_PrecacheSound(helmSound1);
   War3_PrecacheSound(helmSound2);
   War3_PrecacheSound(helmSound3);
   
   LoadTranslations("w3s.item.helm.phrases");
}
public OnWar3LoadRaceOrItemOrdered2(num)
{
   if(num==100){
   
      thisItem=War3_CreateShopItemT("helm",10,3500);
   }   
}
public OnClientPutInServer(client){
   SDKHook(client,SDKHook_TraceAttack,SDK_Forwarded_TraceAttack);
}


public Action:SDK_Forwarded_TraceAttack(victim, &attacker, &inflictor, &Float:damage, &damagetype, &ammotype, hitbox, hitgroup)
{
   if(hitgroup==1&&War3_GetOwnsItem(victim,thisItem)&&!Perplexed(victim)){
      damage=0.0;
      new random = GetRandomInt(0,3);
      if(random==0){
         EmitSoundToAll(helmSound0,victim);
      }else if(random==1){
         EmitSoundToAll(helmSound1,victim);
      }else if(random==2){
         EmitSoundToAll(helmSound2,victim);
      }else{
         EmitSoundToAll(helmSound3,victim);
      }
      if(War3_GetGame()==TF){
         decl Float:pos[3];
         GetClientEyePosition(victim, pos);
         pos[2] += 4.0;
         War3_TF_ParticleToClient(0, "miss_text", pos); //to the attacker at the enemy pos
      }
   }
   return Plugin_Changed;
}


« Last Edit: April 29, 2012, 01:27:27 PM by drembass » Logged
Divix
Sr. Member
****
Posts: 280


View Profile Email
« Reply #12 on: April 29, 2012, 04:08:26 PM »

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

Во-первых, просьба использовать
Quote
цитату
или
Code:
код
.
Во-вторых, ответ на вопрос: есть shopmenu (War3Source_ShopItems.sp) и shopmenu2 (War3Source_ShopItems2.sp).
Во втором shopmenu вещи сохраняются после перезахода и => надо переделать код предмета для шопменю2.
Logged
drembass
Newbie
*
Posts: 7


View Profile Email
« Reply #13 on: April 30, 2012, 02:57:55 AM »

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

Во-первых, просьба использовать
Quote
цитату
или
Code:
код
.
Во-вторых, ответ на вопрос: есть shopmenu (War3Source_ShopItems.sp) и shopmenu2 (War3Source_ShopItems2.sp).
Во втором shopmenu вещи сохраняются после перезахода и => надо переделать код предмета для шопменю2.

Что нужно переделать?

Это?
Code:
public OnItem2Lost(client,item){ //deactivate passives , client may have disconnected
//DP("lost %d %d",client,item);
if(item==ItemID[POSTHASTE]){
War3_SetBuffItem2(client,fMaxSpeed2,ItemID[POSTHASTE],1.0);
}
if(item==ItemID[TRINKET] ) // boots of speed
{
War3_SetBuffItem2(client,fHPRegen,ItemID[TRINKET],0.0);
}
if(item==ItemID[LIFETUBE] ) // boots of speed
{
War3_SetBuffItem2(client,fHPRegen,ItemID[LIFETUBE],0.0);
}
if(item==ItemID[FORTIFIED_BRACER]){
War3_SetBuffItem2(client,iAdditionalMaxHealth,ItemID[FORTIFIED_BRACER],0);
}
}
« Last Edit: April 30, 2012, 03:00:11 AM by drembass » Logged
Divix
Sr. Member
****
Posts: 280


View Profile Email
« Reply #14 on: April 30, 2012, 04:18:42 AM »

Что нужно переделать?
Это?

Вот пример для шлема (helm; не проверено, как работает). Для других вещей по тому же принципу.
Logged
drembass
Newbie
*
Posts: 7


View Profile Email
« Reply #15 on: April 30, 2012, 05:15:20 AM »

Что нужно переделать?
Это?

Вот пример для шлема (helm; не проверено, как работает). Для других вещей по тому же принципу.

все равно не сохраняется

У тебя есть скайп?
Logged
Divix
Sr. Member
****
Posts: 280


View Profile Email
« Reply #16 on: April 30, 2012, 05:22:41 AM »

Что нужно переделать?
Это?

Вот пример для шлема (helm; не проверено, как работает). Для других вещей по тому же принципу.

все равно не сохраняется

У тебя есть скайп?

А ты покупаешь в shopmenu или shopmenu2 ?
Logged
drembass
Newbie
*
Posts: 7


View Profile Email
« Reply #17 on: April 30, 2012, 05:33:54 AM »

Что нужно переделать?
Это?

Вот пример для шлема (helm; не проверено, как работает). Для других вещей по тому же принципу.

все равно не сохраняется

У тебя есть скайп?

А ты покупаешь в shopmenu или shopmenu2 ?
ааа... в 1. можно такое в shopmenu сделать?
« Last Edit: April 30, 2012, 06:10:45 AM by drembass » Logged
MIkS
Newbie
*
Posts: 9


View Profile Email
« Reply #18 on: April 30, 2012, 11:04:42 AM »

Quote
Чтобы вещи не пропадали после смерти. т.е были всегда, пока не заменят.
А чо если у тя две вещи есть, и без плагина dropitem их как то заменить можнО?  Huh
Logged
Divix
Sr. Member
****
Posts: 280


View Profile Email
« Reply #19 on: April 30, 2012, 11:09:12 AM »

ааа... в 1. можно такое в shopmenu сделать?

Ты пойми, shopmenu2 было придумано специально для такой просьбы, как у тебя. Можно, но делать это я думаю никто (даже сомневаюсь, что за деньги) не захочет... Можно в War3Source_Engine_CommandHook.sp заменить
RegConsoleCmd("shopmenu",War3Source_CmdShopmenu);
на
RegConsoleCmd("shopmenu",War3Source_CmdShopmenu2);
Если сделать так, то при вводи shopmenu будет выводится shopmenu2.

И зачем делать в shopmenu1 ?

Quote
А чо если у тя две вещи есть, и без плагина dropitem их как то заменить можнО?
Кажется нет, надо дописывать код (но насчет этого не знаю точно)
Logged
senator141
Newbie
*
Posts: 40


View Profile
« Reply #20 on: May 01, 2012, 06:57:44 AM »

Quote
Чтобы вещи не пропадали после смерти. т.е были всегда, пока не заменят.
А чо если у тя две вещи есть, и без плагина dropitem их как то заменить можнО?  Huh

Если я правильно понял, то одна вещь будет заменяться другой (какую ты выберешь сам)
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!