Проблема с вардом

  • Автор темы Автор темы UZzip
  • Дата начала Дата начала

UZzip

Продвинутый
2 Янв 2016
282
1
Беру код предмета из исходника доты
Код:
//=================================================================================================================
	// Observer Wards
	//=================================================================================================================
	"item_ward_observer"
	{
		// General
		//-------------------------------------------------------------------------------------------------------------
		"ID"							"42"														// unique ID number for this item. Do not change this once established or it will invalidate collected stats.
		"AbilityBehavior"				"DOTA_ABILITY_BEHAVIOR_POINT | DOTA_ABILITY_BEHAVIOR_AOE | DOTA_ABILITY_BEHAVIOR_OPTIONAL_UNIT_TARGET"
		"AbilityUnitTargetTeam"			"DOTA_UNIT_TARGET_TEAM_FRIENDLY"
		"AbilityUnitTargetType"			"DOTA_UNIT_TARGET_HERO"
		"AbilityUnitTargetFlags"		"DOTA_UNIT_TARGET_FLAG_NOT_CREEP_HERO"
		"Model"							"models/props_gameplay/observer_ward_bundle.vmdl"
		
		
		// Stats
		//-------------------------------------------------------------------------------------------------------------
		"AbilityCastRange"				"500"
		"AbilityCastPoint"				"0.0"
		"AbilityCooldown"				"1.0"
		
		// Item Info
		//-------------------------------------------------------------------------------------------------------------
		"ItemCost"						"75"
		"ItemShopTags"					"consumable"
		"ItemQuality"					"consumable"
		"ItemAliases"					"observer ward"
		"ItemStackable"					"1"
		"ItemShareability"				"ITEM_FULLY_SHAREABLE_STACKING"
		"ItemPermanent"					"0"
		"ItemInitialCharges"			"1"
		"ItemStockMax"					"4"
		"ItemStockInitial"				"2"
		"ItemStockTime"					"180.0"
		"ItemDeclarations"				"DECLARE_PURCHASES_TO_TEAMMATES"
		"ItemSupport"					"1"

		// Special	
		//-------------------------------------------------------------------------------------------------------------
		"AbilitySpecial"
		{
			"01"
			{
				"var_type"				"FIELD_INTEGER"
				"lifetime"				"420"
			}
			"02"
			{
				"var_type"				"FIELD_INTEGER"
				"vision_range"			"1600"
			}
			"03"
			{
				"var_type"				"FIELD_INTEGER"
				"health"				"200"
			}
			"04"
			{
				"var_type"				"FIELD_INTEGER"
				"duration_minutes_tooltip"				"7"
			}
		}
	}

добавляю бейсклас и иконку, меняю айди.
Код:
"item_ward_observer2"
 {
  "BaseClass"      "item_datadriven"
  "AbilityTextureName"   "item_ward_observer"
  "ID"       "1123"   

  "AbilityBehavior"    "DOTA_ABILITY_BEHAVIOR_POINT | DOTA_ABILITY_BEHAVIOR_AOE | DOTA_ABILITY_BEHAVIOR_OPTIONAL_UNIT_TARGET"
  "AbilityUnitTargetTeam"   "DOTA_UNIT_TARGET_TEAM_FRIENDLY"
  "AbilityUnitTargetType"   "DOTA_UNIT_TARGET_HERO"
  "AbilityUnitTargetFlags"  "DOTA_UNIT_TARGET_FLAG_NOT_CREEP_HERO"
  "Model"       "models/props_gameplay/observer_ward_bundle.vmdl"
  
  
  // Stats
  //-------------------------------------------------------------------------------------------------------------
  "AbilityCastRange"    "500"
  "AbilityCastPoint"    "0.0"
  "AbilityCooldown"    "1.0"
  
  // Item Info
  //-------------------------------------------------------------------------------------------------------------
  "ItemCost"      "300"
  "ItemShopTags"     "consumable"
  "ItemQuality"     "consumable"
  "ItemAliases"     "observer ward"
  "ItemStackable"     "1"
  "ItemShareability"    "ITEM_FULLY_SHAREABLE_STACKING"
  "ItemPermanent"     "0"
  "ItemInitialCharges"   "1"
  "ItemStockMax"     "4"
  "ItemStockInitial"    "2"
  "ItemStockTime"     "60"
  "ItemDeclarations"    "DECLARE_PURCHASES_TO_TEAMMATES"
  "ItemSupport"     "1"

  // Special 
  //-------------------------------------------------------------------------------------------------------------
  "AbilitySpecial"
  {
   "01"
   {
    "var_type"    "FIELD_INTEGER"
    "lifetime"    "60"
   }
   "02"
   {
    "var_type"    "FIELD_INTEGER"
    "vision_range"   "300"
   }
   "03"
   {
    "var_type"    "FIELD_INTEGER"
    "health"    "1"
   }
   "04"
   {
    "var_type"    "FIELD_INTEGER"
    "duration_minutes_tooltip"    "7"
   }
  }
 }

Предмет не робит, старанно с другими пассивными предметами такой метод работал. Объясните на примере варда, что нужно ещё сделать.
 
Последнее редактирование модератором:
Попробую разъяснить: ты купил себе телевизор. У телевизора есть пульт. Ты им пользовался, на кнопочки нажимал. Знаешь, что какая кнопка делает. Знаешь о батарейках для пульта. Знаешь, куда его не стоит сувать. И вот однажды ты загорелся идеей сделать еще один пульт. Ну так, чтобы был. Вырезал из дерева основу. Для кнопок не знаю, резиновые подушечки использовал. Сделал отверстие для батареек.
Все, готово, жамкаем по кнопкам. Но чет не робит. Почему? Что за магия заставляет тот пульт робить а этот нет? Хмммм, ты взял и со злости расфигачил старый пульт. И что же ты там внутри увидел? Какую-то зеленую пластинку. Микросхему. Так вот, все, что окружает эту микросхему - это не пульт, это "оболчка", наружность. Пульт - это микросхема.

В этих "исходниках" как раз таки только "оболочки" присутствуют. Потому что это не настоящие исходники. Это поверхностные исходники. Микросхем ты там не найдешь. Они в скомпилированных файлах.

Тебе надо реализовать свою "микросхему". Алгоритм, который будет выполнять то, что ты хочешь.
Компилятор смотрит на твой "шаблон" и читает его не как инструкцию к тому, что он должен делать, а как комикс. Какие-то буковки, какие-то "AbilitySpecial" которые ни к чему не привязаны.
Ты просто говоришь ему это самокат. У него есть колеса. Компилятор такой: хи-хи, самокат, колеса.
А что такое колесо? А что делает самокат? На эти вопросы ты не отвечаешь.

Попробуй ради прикола теста в BaseClass прописать item_ward_observer. Если получится, считай, повезло. Иначе надо делать для шмотки абилку "обзор".
 
Последнее редактирование модератором:
-ExotiC- , когда ты успеваешь время находить править чужую ругань? :D
 
Илья, вот не лень тебе было писать. Мне былоо бы достаточно напомнить, что я зря использовал item_datadriven. За совет спасибо, а лучше бы расписал в таком же объёме не пульт а инфу по событиям было бы полезнее)
 
Так что, сработала замена? Я не пробовал подобного, лишь предположил.

А про пульт - оч полезная инфа, как по мне. Я же через пример пытаюсь донести принцип работы с объектами.
 
да заработала, дело в том что это я тупанул, я ведь и раньше так делал.
 
Реклама: