Тема для вопросов по скриптингу.
Функции папируса:
На английском
На русском (не все, но базис)
#721
Отправлено
- werr, Chesh¡re и Olechkafum нравится это
#722
Отправлено
А так? Надеюсь скрипт хоть от части правельно описан
И так - нет.
Дать ссылку на туториал по скриптингу (на английском)?
Очевидно, что у тебя нулевые знания скриптинга, если ты такое пишешь.
Но "от части" скрипт написан правильно, да. Имя скрипта ты не забыл =)
Все остальное вот только - плохо.
#723
Отправлено
И так - нет.
Дать ссылку на туториал по скриптингу (на английском)?
Очевидно, что у тебя нулевые знания скриптинга, если ты такое пишешь.
Но "от части" скрипт написан правильно, да. Имя скрипта ты не забыл =)
Все остальное вот только - плохо.
Буду благодарен.
и да нулевое. Надеялся хоть end endif верно клацнул
#724
Отправлено
И так - нет.
Дать ссылку на туториал по скриптингу (на английском)?
Очевидно, что у тебя нулевые знания скриптинга, если ты такое пишешь.
Но "от части" скрипт написан правильно, да. Имя скрипта ты не забыл =)
Все остальное вот только - плохо.
Хотя я просто скопипастил синтаксис вставив межу названием и Endif=) в надежде что прокатит.
#725
Отправлено
Буду благодарен.
и да нулевое. Надеялся хоть end endif верно клацнул
Читаешь, делаешь.
Просто прочитать, если знания нулевые - недостаточно.
Без практики тут никуда.
Еще две полезные ссылки:
Хотя я просто скопипастил синтаксис вставив межу названием и Endif=) в надежде что прокатит.
Нет, не прокатит =)
Не для того оно нужно.
#726
Отправлено
Автор Sneak Tools любезно разрешил пользоваться его скриптом из его маски для сторонних модов, однако она не везде действует
Можно куда-то вставить эту строчку Function SetPlayerReportCrime(bool abReportCrime = true) native global чтоб скрипт на столсхейме работал?
Это тот самый скрипт который делает игрока невидимым в скайриме
Scriptname SneakToolsEquipMaskMagEffScript extends activemagiceffect AASneakToolsMainQuestScript Property questScript auto Spell Property SneakToolsCheckDetectionSpell auto Spell Property SneakToolsWearingMaskAbility auto Actor Property playerRef auto Event OnEffectStart(Actor akTarget, Actor akCaster) If(akTarget == playerRef) playerRef.AddSpell(SneakToolsWearingMaskAbility, false) If(questScript.playerBusted) questScript.SneakToolsEquipFaceMaskFunction() return EndIf SneakToolsCheckDetectionSpell.Cast(playerRef, playerRef) If(questScript.detected) questScript.SneakToolsEquipFaceMaskFunction() return EndIf Utility.Wait(1) SneakToolsCheckDetectionSpell.Cast(playerRef, playerRef) If(questScript.detected) questScript.SneakToolsEquipFaceMaskFunction() return EndIf Utility.Wait(1) SneakToolsCheckDetectionSpell.Cast(playerRef, playerRef) If(questScript.detected) questScript.SneakToolsEquipFaceMaskFunction() return EndIf Utility.Wait(1) SneakToolsCheckDetectionSpell.Cast(playerRef, playerRef) questScript.SneakToolsEquipFaceMaskFunction() EndIf EndEvent Event OnEffectFinish(Actor akTarget, Actor akCaster) If(akTarget == playerRef) playerRef.RemoveSpell(SneakToolsWearingMaskAbility) SneakToolsCheckDetectionSpell.Cast(playerRef, playerRef) If(questScript.detected) questScript.SneakToolsUnequipFaceMaskFunction() return EndIf Utility.Wait(1) SneakToolsCheckDetectionSpell.Cast(playerRef, playerRef) If(questScript.detected) questScript.SneakToolsUnequipFaceMaskFunction() return EndIf Utility.Wait(1) SneakToolsCheckDetectionSpell.Cast(playerRef, playerRef) If(questScript.detected) questScript.SneakToolsUnequipFaceMaskFunction() return EndIf Utility.Wait(1) SneakToolsCheckDetectionSpell.Cast(playerRef, playerRef) questScript.SneakToolsUnequipFaceMaskFunction() EndIf EndEvent
#727
Отправлено
Это тот самый скрипт который делает игрока невидимым в скайриме
Этот скрипт сам по себе почти ничего не делает.
Он только кастует какие-то заклинания и вызывает функции из квестовых скриптов.
Весь основной функционал лежит в другом месте.
Как я понимаю, на Солстейме это все не работает, потому что автор забыл вставить в функционал соответствующую фракцию, которая за преступления на Солстейме отвечает.
Ну или просто когда мод разрабатывался, Солстейма еще не было, а потом автор поленился это все обновлять.
А это значит, что функционал там посложнее, чем всего одна команда.
#728
Отправлено
Этот скрипт сам по себе почти ничего не делает.
Он только кастует какие-то заклинания и вызывает функции из квестовых скриптов.
Весь основной функционал лежит в другом месте.
Как я понимаю, на Солстейме это все не работает, потому что автор забыл вставить в функционал соответствующую фракцию, которая за преступления на Солстейме отвечает.
Ну или просто когда мод разрабатывался, Солстейма еще не было, а потом автор поленился это все обновлять.
А это значит, что функционал там посложнее, чем всего одна команда.
Нашёл вот этот скрипт в файлах
Scriptname AASneakToolsMainQuestScript extends Quest conditional
float originalJumpHeight
bool isDawnguardInstalled conditional
bool allowThroatSlits conditional
bool allowKnockOuts conditional
bool allowSleepKills conditional
bool allowCrafting conditional
bool Property playerBusted auto
bool Property detected auto
float Property SneakToolsVersion auto
Actor Property PlayerRef auto
Perk Property SneakToolsSlitThroatPerk auto
Perk Property SneakToolsKnockOutPerk auto
Perk Property SneakToolsKillSleepingPerk auto
Perk Property SneakToolsArrowsPerk auto
Faction Property SneakToolsUnconsciousFaction auto
FormList Property SneakToolsFireLightsFormList auto
GlobalVariable Property SneakToolsAllowEssentialKill auto
GlobalVariable Property SneakToolsUseMenus auto
Spell Property SneakToolsTeleportShopSpell auto
Topic Property SneakToolsDialTricksOfTheTrade auto
Topic Property SneakToolsDialKillingTopic auto
Quest Property SneakToolsAliasesQuest auto
Faction Property CrimeFactionEastmarch auto
Faction Property CrimeFactionFalkreath auto
Faction Property CrimeFactionHaafingar auto
Faction Property CrimeFactionHjaalmarch auto
Faction Property CrimeFactionPale auto
Faction Property CrimeFactionReach auto
Faction Property CrimeFactionRift auto
Faction Property CrimeFactionWhiterun auto
Faction Property CrimeFactionWinterhold auto
Faction Property CrimeFactionOrcs auto
int RealCrimeGoldEastMarchViolent
int RealCrimeGoldFalkreathViolent
int RealCrimeGoldHaafingarViolent
int RealCrimeGoldHjaalmarchViolent
int RealCrimeGoldPaleViolent
int RealCrimeGoldReachViolent
int RealCrimeGoldRiftViolent
int RealCrimeGoldWhiterunViolent
int RealCrimeGoldWinterholdViolent
int RealCrimeGoldOrcsViolent
int RealCrimeGoldEastMarchNonViolent
int RealCrimeGoldFalkreathNonViolent
int RealCrimeGoldHaafingarNonViolent
int RealCrimeGoldHjaalmarchNonViolent
int RealCrimeGoldPaleNonViolent
int RealCrimeGoldReachNonViolent
int RealCrimeGoldRiftNonViolent
int RealCrimeGoldWhiterunNonViolent
int RealCrimeGoldWinterholdNonViolent
int RealCrimeGoldOrcsNonViolent
int FakeCrimeGoldEastMarchViolent
int FakeCrimeGoldFalkreathViolent
int FakeCrimeGoldHaafingarViolent
int FakeCrimeGoldHjaalmarchViolent
int FakeCrimeGoldPaleViolent
int FakeCrimeGoldReachViolent
int FakeCrimeGoldRiftViolent
int FakeCrimeGoldWhiterunViolent
int FakeCrimeGoldWinterholdViolent
int FakeCrimeGoldOrcsViolent
int FakeCrimeGoldEastMarchNonViolent
int FakeCrimeGoldFalkreathNonViolent
int FakeCrimeGoldHaafingarNonViolent
int FakeCrimeGoldHjaalmarchNonViolent
int FakeCrimeGoldPaleNonViolent
int FakeCrimeGoldReachNonViolent
int FakeCrimeGoldRiftNonViolent
int FakeCrimeGoldWhiterunNonViolent
int FakeCrimeGoldWinterholdNonViolent
int FakeCrimeGoldOrcsNonViolent
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EQUIPPING;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Function SneakToolsEquipFaceMaskFunction()
UnregisterForUpdateGameTime()
If(playerBusted)
return
ElseIf(detected)
playerBusted=true
SneakToolsUnsuccesfulEquipFaceMaskFunction()
Debug.Notification("My true identity was recognised!")
Else
SneakToolsUpdateRealCrimeGold()
SneakToolsSuccesfulEquipFaceMaskFunction()
playerRef.StopCombatAlarm()
EndIf
detected = false
EndFunction
Function SneakToolsSuccesfulEquipFaceMaskFunction()
CrimeFactionEastmarch.SetCrimeGold(FakeCrimeGoldEastmarchNonViolent)
CrimeFactionEastmarch.SetCrimeGoldViolent(FakeCrimeGoldEastmarchViolent)
CrimeFactionFalkreath.SetCrimeGold(FakeCrimeGoldFalkreathNonViolent)
CrimeFactionFalkreath.SetCrimeGoldViolent(FakeCrimeGoldFalkreathViolent)
CrimeFactionHaafingar.SetCrimeGold(FakeCrimeGoldHaafingarNonViolent)
CrimeFactionHaafingar.SetCrimeGoldViolent(FakeCrimeGoldHaafingarViolent)
CrimeFactionHjaalmarch.SetCrimeGold(FakeCrimeGoldHjaalmarchNonViolent)
CrimeFactionHjaalmarch.SetCrimeGoldViolent(FakeCrimeGoldHjaalmarchViolent)
CrimeFactionPale.SetCrimeGold(FakeCrimeGoldPaleNonViolent)
CrimeFactionPale.SetCrimeGoldViolent(FakeCrimeGoldPaleViolent)
CrimeFactionReach.SetCrimeGold(FakeCrimeGoldReachNonViolent)
CrimeFactionReach.SetCrimeGoldViolent(FakeCrimeGoldReachViolent)
CrimeFactionRift.SetCrimeGold(FakeCrimeGoldRiftNonViolent)
CrimeFactionRift.SetCrimeGoldViolent(FakeCrimeGoldRiftViolent)
CrimeFactionWhiterun.SetCrimeGold(FakeCrimeGoldWhiterunNonViolent)
CrimeFactionWhiterun.SetCrimeGoldViolent(FakeCrimeGoldWhiterunViolent)
CrimeFactionWinterhold.SetCrimeGold(FakeCrimeGoldWinterholdNonViolent)
CrimeFactionWinterhold.SetCrimeGoldViolent(FakeCrimeGoldWinterholdViolent)
CrimeFactionOrcs.SetCrimeGold(FakeCrimeGoldOrcsNonViolent)
CrimeFactionOrcs.SetCrimeGoldViolent(FakeCrimeGoldOrcsViolent)
EndFunction
Function SneakToolsUnsuccesfulEquipFaceMaskFunction()
CrimeFactionEastmarch.ModCrimeGold(FakeCrimeGoldEastmarchNonViolent)
CrimeFactionEastmarch.ModCrimeGold(FakeCrimeGoldEastmarchViolent, true)
CrimeFactionFalkreath.ModCrimeGold(FakeCrimeGoldFalkreathNonViolent)
CrimeFactionFalkreath.ModCrimeGold(FakeCrimeGoldFalkreathViolent, true)
CrimeFactionHaafingar.ModCrimeGold(FakeCrimeGoldHaafingarNonViolent)
CrimeFactionHaafingar.ModCrimeGold(FakeCrimeGoldHaafingarViolent, true)
CrimeFactionHjaalmarch.ModCrimeGold(FakeCrimeGoldHjaalmarchNonViolent)
CrimeFactionHjaalmarch.ModCrimeGold(FakeCrimeGoldHjaalmarchViolent, true)
CrimeFactionPale.ModCrimeGold(FakeCrimeGoldPaleNonViolent)
CrimeFactionPale.ModCrimeGold(FakeCrimeGoldPaleViolent, true)
CrimeFactionReach.ModCrimeGold(FakeCrimeGoldReachNonViolent)
CrimeFactionReach.ModCrimeGold(FakeCrimeGoldReachViolent, true)
CrimeFactionRift.ModCrimeGold(FakeCrimeGoldRiftNonViolent)
CrimeFactionRift.ModCrimeGold(FakeCrimeGoldRiftViolent, true)
CrimeFactionWhiterun.ModCrimeGold(FakeCrimeGoldWhiterunNonViolent)
CrimeFactionWhiterun.ModCrimeGold(FakeCrimeGoldWhiterunViolent, true)
CrimeFactionWinterhold.ModCrimeGold(FakeCrimeGoldWinterholdNonViolent)
CrimeFactionWinterhold.ModCrimeGold(FakeCrimeGoldWinterholdViolent, true)
CrimeFactionOrcs.ModCrimeGold(FakeCrimeGoldOrcsNonViolent)
CrimeFactionOrcs.ModCrimeGold(FakeCrimeGoldOrcsViolent, true)
SneakToolsResetFakeCrimeGold()
EndFunction
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EQUIPPING;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UNEQUIPPING;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Function SneakToolsUnequipFaceMaskFunction()
if(detected)
RegisterForSingleUpdateGameTime(48)
If(!playerBusted)
SneakToolsUnsuccesfulUnequipFaceMaskFunction()
playerBusted=true
EndIf
Else
RegisterForSingleUpdateGameTime(24)
If(!playerBusted)
SneakToolsUpdateFakeCrimeGold()
SneakToolsSuccesfulUnequipFaceMaskFunction()
playerRef.StopCombatAlarm()
EndIf
EndIf
detected = false
EndFunction
Function SneakToolsSuccesfulUnequipFaceMaskFunction()
CrimeFactionEastmarch.SetCrimeGold(RealCrimeGoldEastMarchNonViolent)
CrimeFactionEastmarch.SetCrimeGoldViolent(RealCrimeGoldEastMarchViolent)
CrimeFactionFalkreath.SetCrimeGold(RealCrimeGoldFalkreathNonViolent)
CrimeFactionFalkreath.SetCrimeGoldViolent(RealCrimeGoldFalkreathViolent)
CrimeFactionHaafingar.SetCrimeGold(RealCrimeGoldHaafingarNonViolent)
CrimeFactionHaafingar.SetCrimeGoldViolent(RealCrimeGoldHaafingarViolent)
CrimeFactionHjaalmarch.SetCrimeGold(RealCrimeGoldHjaalmarchNonViolent)
CrimeFactionHjaalmarch.SetCrimeGoldViolent(RealCrimeGoldHjaalmarchViolent)
CrimeFactionPale.SetCrimeGold(RealCrimeGoldPaleNonViolent)
CrimeFactionPale.SetCrimeGoldViolent(RealCrimeGoldPaleViolent)
CrimeFactionReach.SetCrimeGold(RealCrimeGoldReachNonViolent)
CrimeFactionReach.SetCrimeGoldViolent(RealCrimeGoldReachViolent)
CrimeFactionRift.SetCrimeGold(RealCrimeGoldRiftNonViolent)
CrimeFactionRift.SetCrimeGoldViolent(RealCrimeGoldRiftViolent)
CrimeFactionWhiterun.SetCrimeGold(RealCrimeGoldWhiterunNonViolent)
CrimeFactionWhiterun.SetCrimeGoldViolent(RealCrimeGoldWhiterunViolent)
CrimeFactionWinterhold.SetCrimeGold(RealCrimeGoldWinterholdNonViolent)
CrimeFactionWinterhold.SetCrimeGoldViolent(RealCrimeGoldWinterholdViolent)
CrimeFactionOrcs.SetCrimeGold(RealCrimeGoldOrcsNonViolent)
CrimeFactionOrcs.SetCrimeGoldViolent(RealCrimeGoldOrcsViolent)
EndFunction
Function SneakToolsUnsuccesfulUnequipFaceMaskFunction()
CrimeFactionEastmarch.ModCrimeGold(RealCrimeGoldEastMarchNonViolent)
CrimeFactionEastmarch.ModCrimeGold(RealCrimeGoldEastMarchViolent, true)
CrimeFactionFalkreath.ModCrimeGold(RealCrimeGoldFalkreathNonViolent)
CrimeFactionFalkreath.ModCrimeGold(RealCrimeGoldFalkreathViolent, true)
CrimeFactionHaafingar.ModCrimeGold(RealCrimeGoldHaafingarNonViolent)
CrimeFactionHaafingar.ModCrimeGold(RealCrimeGoldHaafingarViolent, true)
CrimeFactionHjaalmarch.ModCrimeGold(RealCrimeGoldHjaalmarchNonViolent)
CrimeFactionHjaalmarch.ModCrimeGold(RealCrimeGoldHjaalmarchViolent, true)
CrimeFactionPale.ModCrimeGold(RealCrimeGoldPaleNonViolent)
CrimeFactionPale.ModCrimeGold(RealCrimeGoldPaleViolent, true)
CrimeFactionReach.ModCrimeGold(RealCrimeGoldReachNonViolent)
CrimeFactionReach.ModCrimeGold(RealCrimeGoldReachViolent, true)
CrimeFactionRift.ModCrimeGold(RealCrimeGoldRiftNonViolent)
CrimeFactionRift.ModCrimeGold(RealCrimeGoldRiftViolent, true)
CrimeFactionWhiterun.ModCrimeGold(RealCrimeGoldWhiterunNonViolent)
CrimeFactionWhiterun.ModCrimeGold(RealCrimeGoldWhiterunViolent, true)
CrimeFactionWinterhold.ModCrimeGold(RealCrimeGoldWinterholdNonViolent)
CrimeFactionWinterhold.ModCrimeGold(RealCrimeGoldWinterholdViolent, true)
CrimeFactionOrcs.ModCrimeGold(RealCrimeGoldOrcsNonViolent)
CrimeFactionOrcs.ModCrimeGold(RealCrimeGoldOrcsViolent, true)
SneakToolsResetFakeCrimeGold()
EndFunction
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UNEQUIPPING;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Function SneakToolsUpdateRealCrimeGold()
RealCrimeGoldEastMarchViolent = CrimeFactionEastmarch.GetCrimeGoldViolent()
RealCrimeGoldFalkreathViolent = CrimeFactionFalkreath.GetCrimeGoldViolent()
RealCrimeGoldHaafingarViolent = CrimeFactionHaafingar.GetCrimeGoldViolent()
RealCrimeGoldHjaalmarchViolent = CrimeFactionHjaalmarch.GetCrimeGoldViolent()
RealCrimeGoldPaleViolent = CrimeFactionPale.GetCrimeGoldViolent()
RealCrimeGoldReachViolent = CrimeFactionReach.GetCrimeGoldViolent()
RealCrimeGoldRiftViolent = CrimeFactionRift.GetCrimeGoldViolent()
RealCrimeGoldWhiterunViolent = CrimeFactionWhiterun.GetCrimeGoldViolent()
RealCrimeGoldWinterholdViolent = CrimeFactionWinterhold.GetCrimeGoldViolent()
RealCrimeGoldOrcsViolent = CrimeFactionOrcs.GetCrimeGoldViolent()
RealCrimeGoldEastMarchNonViolent = CrimeFactionEastmarch.GetCrimeGoldNonViolent()
RealCrimeGoldFalkreathNonViolent = CrimeFactionFalkreath.GetCrimeGoldNonViolent()
RealCrimeGoldHaafingarNonViolent = CrimeFactionHaafingar.GetCrimeGoldNonViolent()
RealCrimeGoldHjaalmarchNonViolent = CrimeFactionHjaalmarch.GetCrimeGoldNonViolent()
RealCrimeGoldPaleNonViolent = CrimeFactionPale.GetCrimeGoldNonViolent()
RealCrimeGoldReachNonViolent = CrimeFactionReach.GetCrimeGoldNonViolent()
RealCrimeGoldRiftNonViolent = CrimeFactionRift.GetCrimeGoldNonViolent()
RealCrimeGoldWhiterunNonViolent = CrimeFactionWhiterun.GetCrimeGoldNonViolent()
RealCrimeGoldWinterholdNonViolent = CrimeFactionWinterhold.GetCrimeGoldNonViolent()
RealCrimeGoldOrcsNonViolent = CrimeFactionOrcs.GetCrimeGoldNonViolent()
EndFunction
Function SneakToolsUpdateFakeCrimeGold()
FakeCrimeGoldEastMarchViolent = CrimeFactionEastmarch.GetCrimeGoldViolent()
FakeCrimeGoldFalkreathViolent = CrimeFactionFalkreath.GetCrimeGoldViolent()
FakeCrimeGoldHaafingarViolent = CrimeFactionHaafingar.GetCrimeGoldViolent()
FakeCrimeGoldHjaalmarchViolent = CrimeFactionHjaalmarch.GetCrimeGoldViolent()
FakeCrimeGoldPaleViolent = CrimeFactionPale.GetCrimeGoldViolent()
FakeCrimeGoldReachViolent = CrimeFactionReach.GetCrimeGoldViolent()
FakeCrimeGoldRiftViolent = CrimeFactionRift.GetCrimeGoldViolent()
FakeCrimeGoldWhiterunViolent = CrimeFactionWhiterun.GetCrimeGoldViolent()
FakeCrimeGoldWinterholdViolent = CrimeFactionWinterhold.GetCrimeGoldViolent()
FakeCrimeGoldOrcsViolent = CrimeFactionOrcs.GetCrimeGoldViolent()
FakeCrimeGoldEastMarchNonViolent = CrimeFactionEastmarch.GetCrimeGoldNonViolent()
FakeCrimeGoldFalkreathNonViolent = CrimeFactionFalkreath.GetCrimeGoldNonViolent()
FakeCrimeGoldHaafingarNonViolent = CrimeFactionHaafingar.GetCrimeGoldNonViolent()
FakeCrimeGoldHjaalmarchNonViolent = CrimeFactionHjaalmarch.GetCrimeGoldNonViolent()
FakeCrimeGoldPaleNonViolent = CrimeFactionPale.GetCrimeGoldNonViolent()
FakeCrimeGoldReachNonViolent = CrimeFactionReach.GetCrimeGoldNonViolent()
FakeCrimeGoldRiftNonViolent = CrimeFactionRift.GetCrimeGoldNonViolent()
FakeCrimeGoldWhiterunNonViolent = CrimeFactionWhiterun.GetCrimeGoldNonViolent()
FakeCrimeGoldWinterholdNonViolent = CrimeFactionWinterhold.GetCrimeGoldNonViolent()
FakeCrimeGoldOrcsNonViolent = CrimeFactionOrcs.GetCrimeGoldNonViolent()
EndFunction
Function SneakToolsResetFakeCrimeGold()
FakeCrimeGoldEastMarchViolent = 0
FakeCrimeGoldFalkreathViolent = 0
FakeCrimeGoldHaafingarViolent = 0
FakeCrimeGoldHjaalmarchViolent = 0
FakeCrimeGoldPaleViolent = 0
FakeCrimeGoldReachViolent = 0
FakeCrimeGoldRiftViolent = 0
FakeCrimeGoldWhiterunViolent = 0
FakeCrimeGoldWinterholdViolent = 0
FakeCrimeGoldOrcsViolent = 0
FakeCrimeGoldEastMarchNonViolent = 0
FakeCrimeGoldFalkreathNonViolent = 0
FakeCrimeGoldHaafingarNonViolent = 0
FakeCrimeGoldHjaalmarchNonViolent = 0
FakeCrimeGoldPaleNonViolent = 0
FakeCrimeGoldReachNonViolent = 0
FakeCrimeGoldRiftNonViolent = 0
FakeCrimeGoldWhiterunNonViolent = 0
FakeCrimeGoldWinterholdNonViolent = 0
FakeCrimeGoldOrcsNonViolent = 0
EndFunction
Function setPlayerBusted(bool busted)
playerBusted=busted
EndFunction
FormList Property TrapGasWeapon auto
Explosion Property SneakToolsTrapOilExplosionInitial auto
Explosion Property SneakToolsTrapOilExplosion01 auto
Explosion Property SneakToolsTrapOilExplosionMaster auto
Function initSneakTools()
playerRef.AddPerk(SneakToolsSlitThroatPerk)
playerRef.AddPerk(SneakToolsKnockOutPerk)
playerRef.AddPerk(SneakToolsKillSleepingPerk)
playerRef.AddPerk(SneakToolsArrowsPerk)
playerRef.AddToFaction(SneakToolsUnconsciousFaction)
playerRef.AddSpell(SneakToolsTeleportShopSpell)
allowThroatSlits = true
allowKnockOuts = true
allowSleepKills = true
allowCrafting = true
SneakToolsDialTricksOfTheTrade.Add()
(Game.GetForm(0x00082E17) As FormList).AddForm(Game.GetFormFromFile(0x0008A735, "Sneak Tools.esp"))
TrapGasWeapon.AddForm(SneakToolsTrapOilExplosionInitial)
TrapGasWeapon.AddForm(SneakToolsTrapOilExplosion01)
TrapGasWeapon.AddForm(SneakToolsTrapOilExplosionMaster)
AddClaraluxLights()
handleDawnguardInstallation()
originalJumpHeight = Game.GetGameSettingFloat("fJumpHeightMin")
RegisterForSingleUpdate(3)
EndFunction
Function handleDawnguardInstallation()
If(Game.GetFormFromFile(0x00000BB3, "Dawnguard.esm") != None) ;Dawnguard installed
isDawnguardInstalled = true
(Game.GetForm(0x00082E17) As FormList).AddForm(Game.GetFormFromFile(0x000ABC5C, "Sneak Tools.esp"))
Else
isDawnguardInstalled = false
return
EndIf
EndFunction
Function addClaraluxLights()
If(Game.GetFormFromFile(0x00003FAA, "CLARALUX - More and Brighter Lights.esm") == None) ;Claralux not installed
return
EndIf
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FAA, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FE1, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA8, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FE2, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA5, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA4, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA6, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA9, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FAD, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00004021, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000018BE, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00001E7B, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x0000131B, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E9E, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E91, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E92, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E93, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E94, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E95, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079BB, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x0000143E, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x0000140A, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FAC, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000013EC, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00001485, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00002180, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00001414, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079AB, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079A7, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079A8, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079A9, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079AA, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079A6, "CLARALUX - More and Brighter Lights.esm"))
EndFunction
Event OnUpdateGameTime()
SneakToolsResetFakeCrimeGold()
playerBusted=false
EndEvent
Event OnUpdate()
SneakToolsAliasesQuest.Stop()
SneakToolsAliasesQuest.Start()
RegisterForSingleUpdate(3)
EndEvent
Function SetUseMenuPopUps(bool b)
If(b)
SneakToolsUseMenus.SetValueInt(1)
Else
SneakToolsUseMenus.SetValueInt(0)
EndIf
EndFunction
Function SetAllowEssentialKills(bool b)
If(b)
SneakToolsAllowEssentialKill.SetValueInt(1)
Else
SneakToolsAllowEssentialKill.SetValueInt(0)
EndIf
EndFunction
Function SetAllowThroatSlits(bool b)
allowThroatSlits = b
EndFunction
Function SetAllowKnockOuts(bool b)
allowKnockOuts = b
EndFunction
Function SetAllowSleepKills(bool b)
allowSleepKills = b
EndFunction
Function SetAllowCrafting(bool b)
allowCrafting = b
EndFunction
Function ActivateMod()
RegisterForSingleUpdate(3)
EndFunction
Function DeactivateMod()
UnregisterForUpdate()
SneakToolsAliasesQuest.Stop()
EndFunction
Function FixJumpingHeight()
Game.SetGameSettingFloat("fJumpHeightMin", originalJumpHeight)
EndFunction
Event OnReset()
RealCrimeGoldEastMarchViolent=0
RealCrimeGoldFalkreathViolent =0
RealCrimeGoldHaafingarViolent =0
RealCrimeGoldHjaalmarchViolent =0
RealCrimeGoldPaleViolent =0
RealCrimeGoldReachViolent =0
RealCrimeGoldRiftViolent =0
RealCrimeGoldWhiterunViolent =0
RealCrimeGoldWinterholdViolent =0
RealCrimeGoldOrcsViolent = 0
RealCrimeGoldEastMarchNonViolent=0
RealCrimeGoldFalkreathNonViolent =0
RealCrimeGoldHaafingarNonViolent =0
RealCrimeGoldHjaalmarchNonViolent =0
RealCrimeGoldPaleNonViolent =0
RealCrimeGoldReachNonViolent =0
RealCrimeGoldRiftNonViolent =0
RealCrimeGoldWhiterunNonViolent =0
RealCrimeGoldWinterholdNonViolent =0
RealCrimeGoldOrcsNonViolent = 0
FakeCrimeGoldEastMarchViolent =0
FakeCrimeGoldFalkreathViolent =0
FakeCrimeGoldHaafingarViolent =0
FakeCrimeGoldHjaalmarchViolent =0
FakeCrimeGoldPaleViolent =0
FakeCrimeGoldReachViolent =0
FakeCrimeGoldRiftViolent =0
FakeCrimeGoldWhiterunViolent =0
FakeCrimeGoldWinterholdViolent =0
FakeCrimeGoldOrcsViolent = 0
FakeCrimeGoldEastMarchNonViolent =0
FakeCrimeGoldFalkreathNonViolent =0
FakeCrimeGoldHaafingarNonViolent =0
FakeCrimeGoldHjaalmarchNonViolent =0
FakeCrimeGoldPaleNonViolent =0
FakeCrimeGoldReachNonViolent =0
FakeCrimeGoldRiftNonViolent =0
FakeCrimeGoldWhiterunNonViolent =0
FakeCrimeGoldWinterholdNonViolent =0
FakeCrimeGoldOrcsNonViolent = 0
EndEvent
#729
Отправлено
Этот скрипт сам по себе почти ничего не делает.
Он только кастует какие-то заклинания и вызывает функции из квестовых скриптов.
Весь основной функционал лежит в другом месте.
Как я понимаю, на Солстейме это все не работает, потому что автор забыл вставить в функционал соответствующую фракцию, которая за преступления на Солстейме отвечает.
Ну или просто когда мод разрабатывался, Солстейма еще не было, а потом автор поленился это все обновлять.
А это значит, что функционал там посложнее, чем всего одна команда.
И надеюсь верно доработал
Scriptname AASneakToolsMainQuestScript extends Quest conditional
float originalJumpHeight
bool isDawnguardInstalled conditional
bool allowThroatSlits conditional
bool allowKnockOuts conditional
bool allowSleepKills conditional
bool allowCrafting conditional
bool Property playerBusted auto
bool Property detected auto
float Property SneakToolsVersion auto
Actor Property PlayerRef auto
Perk Property SneakToolsSlitThroatPerk auto
Perk Property SneakToolsKnockOutPerk auto
Perk Property SneakToolsKillSleepingPerk auto
Perk Property SneakToolsArrowsPerk auto
Faction Property SneakToolsUnconsciousFaction auto
FormList Property SneakToolsFireLightsFormList auto
GlobalVariable Property SneakToolsAllowEssentialKill auto
GlobalVariable Property SneakToolsUseMenus auto
Spell Property SneakToolsTeleportShopSpell auto
Topic Property SneakToolsDialTricksOfTheTrade auto
Topic Property SneakToolsDialKillingTopic auto
Quest Property SneakToolsAliasesQuest auto
Faction Property CrimeFactionEastmarch auto
Faction Property CrimeFactionFalkreath auto
Faction Property CrimeFactionHaafingar auto
Faction Property CrimeFactionHjaalmarch auto
Faction Property CrimeFactionPale auto
Faction Property CrimeFactionReach auto
Faction Property CrimeFactionRift auto
Faction Property CrimeFactionWhiterun auto
Faction Property CrimeFactionWinterhold auto
Faction Property CrimeFactionOrcs auto
Faction Property DLC2CrimeRavenRock auto
int RealCrimeGoldEastMarchViolent
int RealCrimeGoldFalkreathViolent
int RealCrimeGoldHaafingarViolent
int RealCrimeGoldHjaalmarchViolent
int RealCrimeGoldPaleViolent
int RealCrimeGoldReachViolent
int RealCrimeGoldRiftViolent
int RealCrimeGoldWhiterunViolent
int RealCrimeGoldWinterholdViolent
int RealCrimeGoldOrcsViolent
int RealCrimeGoldDLC2CrimeRavenRockViolent
int RealCrimeGoldEastMarchNonViolent
int RealCrimeGoldFalkreathNonViolent
int RealCrimeGoldHaafingarNonViolent
int RealCrimeGoldHjaalmarchNonViolent
int RealCrimeGoldPaleNonViolent
int RealCrimeGoldReachNonViolent
int RealCrimeGoldRiftNonViolent
int RealCrimeGoldWhiterunNonViolent
int RealCrimeGoldWinterholdNonViolent
int RealCrimeGoldOrcsNonViolent
int RealCrimeGoldDLC2CrimeRavenRockNonViolent
int FakeCrimeGoldEastMarchViolent
int FakeCrimeGoldFalkreathViolent
int FakeCrimeGoldHaafingarViolent
int FakeCrimeGoldHjaalmarchViolent
int FakeCrimeGoldPaleViolent
int FakeCrimeGoldReachViolent
int FakeCrimeGoldRiftViolent
int FakeCrimeGoldWhiterunViolent
int FakeCrimeGoldWinterholdViolent
int FakeCrimeGoldOrcsViolent
int FakeCrimeGoldDLC2CrimeRavenRockViolent
int FakeCrimeGoldEastMarchNonViolent
int FakeCrimeGoldFalkreathNonViolent
int FakeCrimeGoldHaafingarNonViolent
int FakeCrimeGoldHjaalmarchNonViolent
int FakeCrimeGoldPaleNonViolent
int FakeCrimeGoldReachNonViolent
int FakeCrimeGoldRiftNonViolent
int FakeCrimeGoldWhiterunNonViolent
int FakeCrimeGoldWinterholdNonViolent
int FakeCrimeGoldOrcsNonViolent
int FakeCrimeGoldDLC2CrimeRavenRockNonViolent
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EQUIPPING;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Function SneakToolsEquipFaceMaskFunction()
UnregisterForUpdateGameTime()
If(playerBusted)
return
ElseIf(detected)
playerBusted=true
SneakToolsUnsuccesfulEquipFaceMaskFunction()
Debug.Notification("My true identity was recognised!")
Else
SneakToolsUpdateRealCrimeGold()
SneakToolsSuccesfulEquipFaceMaskFunction()
playerRef.StopCombatAlarm()
EndIf
detected = false
EndFunction
Function SneakToolsSuccesfulEquipFaceMaskFunction()
CrimeFactionEastmarch.SetCrimeGold(FakeCrimeGoldEastmarchNonViolent)
CrimeFactionEastmarch.SetCrimeGoldViolent(FakeCrimeGoldEastmarchViolent)
CrimeFactionFalkreath.SetCrimeGold(FakeCrimeGoldFalkreathNonViolent)
CrimeFactionFalkreath.SetCrimeGoldViolent(FakeCrimeGoldFalkreathViolent)
CrimeFactionHaafingar.SetCrimeGold(FakeCrimeGoldHaafingarNonViolent)
CrimeFactionHaafingar.SetCrimeGoldViolent(FakeCrimeGoldHaafingarViolent)
CrimeFactionHjaalmarch.SetCrimeGold(FakeCrimeGoldHjaalmarchNonViolent)
CrimeFactionHjaalmarch.SetCrimeGoldViolent(FakeCrimeGoldHjaalmarchViolent)
CrimeFactionPale.SetCrimeGold(FakeCrimeGoldPaleNonViolent)
CrimeFactionPale.SetCrimeGoldViolent(FakeCrimeGoldPaleViolent)
CrimeFactionReach.SetCrimeGold(FakeCrimeGoldReachNonViolent)
CrimeFactionReach.SetCrimeGoldViolent(FakeCrimeGoldReachViolent)
CrimeFactionRift.SetCrimeGold(FakeCrimeGoldRiftNonViolent)
CrimeFactionRift.SetCrimeGoldViolent(FakeCrimeGoldRiftViolent)
CrimeFactionWhiterun.SetCrimeGold(FakeCrimeGoldWhiterunNonViolent)
CrimeFactionWhiterun.SetCrimeGoldViolent(FakeCrimeGoldWhiterunViolent)
CrimeFactionWinterhold.SetCrimeGold(FakeCrimeGoldWinterholdNonViolent)
CrimeFactionWinterhold.SetCrimeGoldViolent(FakeCrimeGoldWinterholdViolent)
CrimeFactionOrcs.SetCrimeGold(FakeCrimeGoldOrcsNonViolent)
CrimeFactionOrcs.SetCrimeGold(FakeCrimeGoldOrcsNonViolent)
CrimeFactionOrcs.SetCrimeGoldViolent(FakeCrimeGoldOrcsViolent)
DLC2CrimeRavenRock.SetCrimeGold(FakeCrimeGoldDLC2CrimeRavenRockNonViolent)
DLC2CrimeRavenRock.SetCrimeGoldViolent(FakeCrimeGoldDLC2CrimeRavenRockViolent)
;;;;;;;;;;;;;;;;;;;;;;;;;;DLC2CrimeRavenRockFaction;;;;;;;;;;;;;;;;;;;;;;;;;;;;
EndFunction
Function SneakToolsUnsuccesfulEquipFaceMaskFunction()
CrimeFactionEastmarch.ModCrimeGold(FakeCrimeGoldEastmarchNonViolent)
CrimeFactionEastmarch.ModCrimeGold(FakeCrimeGoldEastmarchViolent, true)
CrimeFactionFalkreath.ModCrimeGold(FakeCrimeGoldFalkreathNonViolent)
CrimeFactionFalkreath.ModCrimeGold(FakeCrimeGoldFalkreathViolent, true)
CrimeFactionHaafingar.ModCrimeGold(FakeCrimeGoldHaafingarNonViolent)
CrimeFactionHaafingar.ModCrimeGold(FakeCrimeGoldHaafingarViolent, true)
CrimeFactionHjaalmarch.ModCrimeGold(FakeCrimeGoldHjaalmarchNonViolent)
CrimeFactionHjaalmarch.ModCrimeGold(FakeCrimeGoldHjaalmarchViolent, true)
CrimeFactionPale.ModCrimeGold(FakeCrimeGoldPaleNonViolent)
CrimeFactionPale.ModCrimeGold(FakeCrimeGoldPaleViolent, true)
CrimeFactionReach.ModCrimeGold(FakeCrimeGoldReachNonViolent)
CrimeFactionReach.ModCrimeGold(FakeCrimeGoldReachViolent, true)
CrimeFactionRift.ModCrimeGold(FakeCrimeGoldRiftNonViolent)
CrimeFactionRift.ModCrimeGold(FakeCrimeGoldRiftViolent, true)
CrimeFactionWhiterun.ModCrimeGold(FakeCrimeGoldWhiterunNonViolent)
CrimeFactionWhiterun.ModCrimeGold(FakeCrimeGoldWhiterunViolent, true)
CrimeFactionWinterhold.ModCrimeGold(FakeCrimeGoldWinterholdNonViolent)
CrimeFactionWinterhold.ModCrimeGold(FakeCrimeGoldWinterholdViolent, true)
CrimeFactionOrcs.ModCrimeGold(FakeCrimeGoldOrcsNonViolent)
CrimeFactionOrcs.ModCrimeGold(FakeCrimeGoldOrcsViolent, true)
DLC2CrimeRavenRock.ModCrimeGold(FakeCrimeGoldDLC2CrimeRavenRockNonViolent)
DLC2CrimeRavenRock.ModCrimeGold(FakeCrimeGoldDLC2CrimeRavenRockViolent, true)
SneakToolsResetFakeCrimeGold()
EndFunction
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EQUIPPING;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UNEQUIPPING;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Function SneakToolsUnequipFaceMaskFunction()
if(detected)
RegisterForSingleUpdateGameTime(48)
If(!playerBusted)
SneakToolsUnsuccesfulUnequipFaceMaskFunction()
playerBusted=true
EndIf
Else
RegisterForSingleUpdateGameTime(24)
If(!playerBusted)
SneakToolsUpdateFakeCrimeGold()
SneakToolsSuccesfulUnequipFaceMaskFunction()
playerRef.StopCombatAlarm()
EndIf
EndIf
detected = false
EndFunction
Function SneakToolsSuccesfulUnequipFaceMaskFunction()
CrimeFactionEastmarch.SetCrimeGold(RealCrimeGoldEastMarchNonViolent)
CrimeFactionEastmarch.SetCrimeGoldViolent(RealCrimeGoldEastMarchViolent)
CrimeFactionFalkreath.SetCrimeGold(RealCrimeGoldFalkreathNonViolent)
CrimeFactionFalkreath.SetCrimeGoldViolent(RealCrimeGoldFalkreathViolent)
CrimeFactionHaafingar.SetCrimeGold(RealCrimeGoldHaafingarNonViolent)
CrimeFactionHaafingar.SetCrimeGoldViolent(RealCrimeGoldHaafingarViolent)
CrimeFactionHjaalmarch.SetCrimeGold(RealCrimeGoldHjaalmarchNonViolent)
CrimeFactionHjaalmarch.SetCrimeGoldViolent(RealCrimeGoldHjaalmarchViolent)
CrimeFactionPale.SetCrimeGold(RealCrimeGoldPaleNonViolent)
CrimeFactionPale.SetCrimeGoldViolent(RealCrimeGoldPaleViolent)
CrimeFactionReach.SetCrimeGold(RealCrimeGoldReachNonViolent)
CrimeFactionReach.SetCrimeGoldViolent(RealCrimeGoldReachViolent)
CrimeFactionRift.SetCrimeGold(RealCrimeGoldRiftNonViolent)
CrimeFactionRift.SetCrimeGoldViolent(RealCrimeGoldRiftViolent)
CrimeFactionWhiterun.SetCrimeGold(RealCrimeGoldWhiterunNonViolent)
CrimeFactionWhiterun.SetCrimeGoldViolent(RealCrimeGoldWhiterunViolent)
CrimeFactionWinterhold.SetCrimeGold(RealCrimeGoldWinterholdNonViolent)
CrimeFactionWinterhold.SetCrimeGoldViolent(RealCrimeGoldWinterholdViolent)
CrimeFactionOrcs.SetCrimeGold(RealCrimeGoldOrcsNonViolent)
CrimeFactionOrcs.SetCrimeGoldViolent(RealCrimeGoldOrcsViolent)
DLC2CrimeRavenRock.SetCrimeGold(RealCrimeGoldDLC2CrimeRavenRockNonViolent)
DLC2CrimeRavenRock.SetCrimeGoldViolent(RealCrimeGoldDLC2CrimeRavenRockViolent)
EndFunction
Function SneakToolsUnsuccesfulUnequipFaceMaskFunction()
CrimeFactionEastmarch.ModCrimeGold(RealCrimeGoldEastMarchNonViolent)
CrimeFactionEastmarch.ModCrimeGold(RealCrimeGoldEastMarchViolent, true)
CrimeFactionFalkreath.ModCrimeGold(RealCrimeGoldFalkreathNonViolent)
CrimeFactionFalkreath.ModCrimeGold(RealCrimeGoldFalkreathViolent, true)
CrimeFactionHaafingar.ModCrimeGold(RealCrimeGoldHaafingarNonViolent)
CrimeFactionHaafingar.ModCrimeGold(RealCrimeGoldHaafingarViolent, true)
CrimeFactionHjaalmarch.ModCrimeGold(RealCrimeGoldHjaalmarchNonViolent)
CrimeFactionHjaalmarch.ModCrimeGold(RealCrimeGoldHjaalmarchViolent, true)
CrimeFactionPale.ModCrimeGold(RealCrimeGoldPaleNonViolent)
CrimeFactionPale.ModCrimeGold(RealCrimeGoldPaleViolent, true)
CrimeFactionReach.ModCrimeGold(RealCrimeGoldReachNonViolent)
CrimeFactionReach.ModCrimeGold(RealCrimeGoldReachViolent, true)
CrimeFactionRift.ModCrimeGold(RealCrimeGoldRiftNonViolent)
CrimeFactionRift.ModCrimeGold(RealCrimeGoldRiftViolent, true)
CrimeFactionWhiterun.ModCrimeGold(RealCrimeGoldWhiterunNonViolent)
CrimeFactionWhiterun.ModCrimeGold(RealCrimeGoldWhiterunViolent, true)
CrimeFactionWinterhold.ModCrimeGold(RealCrimeGoldWinterholdNonViolent)
CrimeFactionWinterhold.ModCrimeGold(RealCrimeGoldWinterholdViolent, true)
CrimeFactionOrcs.ModCrimeGold(RealCrimeGoldOrcsNonViolent)
CrimeFactionOrcs.ModCrimeGold(RealCrimeGoldOrcsViolent, true)
DLC2CrimeRavenRock.ModCrimeGold(RealCrimeGoldDLC2CrimeRavenRockNonViolent)
DLC2CrimeRavenRock.ModCrimeGold(RealCrimeGoldDLC2CrimeRavenRockViolent, true)
SneakToolsResetFakeCrimeGold()
EndFunction
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UNEQUIPPING;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Function SneakToolsUpdateRealCrimeGold()
RealCrimeGoldEastMarchViolent = CrimeFactionEastmarch.GetCrimeGoldViolent()
RealCrimeGoldFalkreathViolent = CrimeFactionFalkreath.GetCrimeGoldViolent()
RealCrimeGoldHaafingarViolent = CrimeFactionHaafingar.GetCrimeGoldViolent()
RealCrimeGoldHjaalmarchViolent = CrimeFactionHjaalmarch.GetCrimeGoldViolent()
RealCrimeGoldPaleViolent = CrimeFactionPale.GetCrimeGoldViolent()
RealCrimeGoldReachViolent = CrimeFactionReach.GetCrimeGoldViolent()
RealCrimeGoldRiftViolent = CrimeFactionRift.GetCrimeGoldViolent()
RealCrimeGoldWhiterunViolent = CrimeFactionWhiterun.GetCrimeGoldViolent()
RealCrimeGoldWinterholdViolent = CrimeFactionWinterhold.GetCrimeGoldViolent()
RealCrimeGoldOrcsViolent = CrimeFactionOrcs.GetCrimeGoldViolent()
RealCrimeGoldDLC2CrimeRavenRockViolent = DLC2CrimeRavenRock.GetCrimeGoldViolent()
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
RealCrimeGoldEastMarchNonViolent = CrimeFactionEastmarch.GetCrimeGoldNonViolent()
RealCrimeGoldFalkreathNonViolent = CrimeFactionFalkreath.GetCrimeGoldNonViolent()
RealCrimeGoldHaafingarNonViolent = CrimeFactionHaafingar.GetCrimeGoldNonViolent()
RealCrimeGoldHjaalmarchNonViolent = CrimeFactionHjaalmarch.GetCrimeGoldNonViolent()
RealCrimeGoldPaleNonViolent = CrimeFactionPale.GetCrimeGoldNonViolent()
RealCrimeGoldReachNonViolent = CrimeFactionReach.GetCrimeGoldNonViolent()
RealCrimeGoldRiftNonViolent = CrimeFactionRift.GetCrimeGoldNonViolent()
RealCrimeGoldWhiterunNonViolent = CrimeFactionWhiterun.GetCrimeGoldNonViolent()
RealCrimeGoldWinterholdNonViolent = CrimeFactionWinterhold.GetCrimeGoldNonViolent()
RealCrimeGoldOrcsNonViolent = CrimeFactionOrcs.GetCrimeGoldNonViolent()
RealCrimeGoldDLC2CrimeRavenRockNonViolent = DLC2CrimeRavenRock.GetCrimeGoldNonViolent()
EndFunction
Function SneakToolsUpdateFakeCrimeGold()
FakeCrimeGoldEastMarchViolent = CrimeFactionEastmarch.GetCrimeGoldViolent()
FakeCrimeGoldFalkreathViolent = CrimeFactionFalkreath.GetCrimeGoldViolent()
FakeCrimeGoldHaafingarViolent = CrimeFactionHaafingar.GetCrimeGoldViolent()
FakeCrimeGoldHjaalmarchViolent = CrimeFactionHjaalmarch.GetCrimeGoldViolent()
FakeCrimeGoldPaleViolent = CrimeFactionPale.GetCrimeGoldViolent()
FakeCrimeGoldReachViolent = CrimeFactionReach.GetCrimeGoldViolent()
FakeCrimeGoldRiftViolent = CrimeFactionRift.GetCrimeGoldViolent()
FakeCrimeGoldWhiterunViolent = CrimeFactionWhiterun.GetCrimeGoldViolent()
FakeCrimeGoldWinterholdViolent = CrimeFactionWinterhold.GetCrimeGoldViolent()
FakeCrimeGoldOrcsViolent = CrimeFactionOrcs.GetCrimeGoldViolent()
FakeCrimeGoldDLC2CrimeRavenRockViolent = DLC2CrimeRavenRock.GetCrimeGoldViolent()
FakeCrimeGoldEastMarchNonViolent = CrimeFactionEastmarch.GetCrimeGoldNonViolent()
FakeCrimeGoldFalkreathNonViolent = CrimeFactionFalkreath.GetCrimeGoldNonViolent()
FakeCrimeGoldHaafingarNonViolent = CrimeFactionHaafingar.GetCrimeGoldNonViolent()
FakeCrimeGoldHjaalmarchNonViolent = CrimeFactionHjaalmarch.GetCrimeGoldNonViolent()
FakeCrimeGoldPaleNonViolent = CrimeFactionPale.GetCrimeGoldNonViolent()
FakeCrimeGoldReachNonViolent = CrimeFactionReach.GetCrimeGoldNonViolent()
FakeCrimeGoldRiftNonViolent = CrimeFactionRift.GetCrimeGoldNonViolent()
FakeCrimeGoldWhiterunNonViolent = CrimeFactionWhiterun.GetCrimeGoldNonViolent()
FakeCrimeGoldWinterholdNonViolent = CrimeFactionWinterhold.GetCrimeGoldNonViolent()
FakeCrimeGoldOrcsNonViolent = CrimeFactionOrcs.GetCrimeGoldNonViolent()
FakeCrimeGoldDLC2CrimeRavenRockNonViolent = DLC2CrimeRavenRock.GetCrimeGoldNonViolent()
EndFunction
Function SneakToolsResetFakeCrimeGold()
FakeCrimeGoldEastMarchViolent = 0
FakeCrimeGoldFalkreathViolent = 0
FakeCrimeGoldHaafingarViolent = 0
FakeCrimeGoldHjaalmarchViolent = 0
FakeCrimeGoldPaleViolent = 0
FakeCrimeGoldReachViolent = 0
FakeCrimeGoldRiftViolent = 0
FakeCrimeGoldWhiterunViolent = 0
FakeCrimeGoldWinterholdViolent = 0
FakeCrimeGoldOrcsViolent = 0
FakeCrimeGoldDLC2CrimeRavenRockViolent = 0
FakeCrimeGoldEastMarchNonViolent = 0
FakeCrimeGoldFalkreathNonViolent = 0
FakeCrimeGoldHaafingarNonViolent = 0
FakeCrimeGoldHjaalmarchNonViolent = 0
FakeCrimeGoldPaleNonViolent = 0
FakeCrimeGoldReachNonViolent = 0
FakeCrimeGoldRiftNonViolent = 0
FakeCrimeGoldWhiterunNonViolent = 0
FakeCrimeGoldWinterholdNonViolent = 0
FakeCrimeGoldOrcsNonViolent = 0
FakeCrimeGoldDLC2CrimeRavenRockNonViolent = 0
EndFunction
Function setPlayerBusted(bool busted)
playerBusted=busted
EndFunction
FormList Property TrapGasWeapon auto
Explosion Property SneakToolsTrapOilExplosionInitial auto
Explosion Property SneakToolsTrapOilExplosion01 auto
Explosion Property SneakToolsTrapOilExplosionMaster auto
Function initSneakTools()
playerRef.AddPerk(SneakToolsSlitThroatPerk)
playerRef.AddPerk(SneakToolsKnockOutPerk)
playerRef.AddPerk(SneakToolsKillSleepingPerk)
playerRef.AddPerk(SneakToolsArrowsPerk)
playerRef.AddToFaction(SneakToolsUnconsciousFaction)
playerRef.AddSpell(SneakToolsTeleportShopSpell)
allowThroatSlits = true
allowKnockOuts = true
allowSleepKills = true
allowCrafting = true
SneakToolsDialTricksOfTheTrade.Add()
(Game.GetForm(0x00082E17) As FormList).AddForm(Game.GetFormFromFile(0x0008A735, "Sneak Tools.esp"))
TrapGasWeapon.AddForm(SneakToolsTrapOilExplosionInitial)
TrapGasWeapon.AddForm(SneakToolsTrapOilExplosion01)
TrapGasWeapon.AddForm(SneakToolsTrapOilExplosionMaster)
AddClaraluxLights()
handleDawnguardInstallation()
originalJumpHeight = Game.GetGameSettingFloat("fJumpHeightMin")
RegisterForSingleUpdate(3)
EndFunction
Function handleDawnguardInstallation()
If(Game.GetFormFromFile(0x00000BB3, "Dawnguard.esm") != None) ;Dawnguard installed
isDawnguardInstalled = true
(Game.GetForm(0x00082E17) As FormList).AddForm(Game.GetFormFromFile(0x000ABC5C, "Sneak Tools.esp"))
Else
isDawnguardInstalled = false
return
EndIf
EndFunction
Function addClaraluxLights()
If(Game.GetFormFromFile(0x00003FAA, "CLARALUX - More and Brighter Lights.esm") == None) ;Claralux not installed
return
EndIf
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FAA, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FE1, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA8, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FE2, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA5, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA4, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA6, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FA9, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FAD, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00004021, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000018BE, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00001E7B, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x0000131B, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E9E, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E91, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E92, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E93, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E94, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00006E95, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079BB, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x0000143E, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x0000140A, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00003FAC, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000013EC, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00001485, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00002180, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x00001414, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079AB, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079A7, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079A8, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079A9, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079AA, "CLARALUX - More and Brighter Lights.esm"))
SneakToolsFireLightsFormList.AddForm(Game.GetFormFromFile(0x000079A6, "CLARALUX - More and Brighter Lights.esm"))
EndFunction
Event OnUpdateGameTime()
SneakToolsResetFakeCrimeGold()
playerBusted=false
EndEvent
Event OnUpdate()
SneakToolsAliasesQuest.Stop()
SneakToolsAliasesQuest.Start()
RegisterForSingleUpdate(3)
EndEvent
Function SetUseMenuPopUps(bool b)
If(b)
SneakToolsUseMenus.SetValueInt(1)
Else
SneakToolsUseMenus.SetValueInt(0)
EndIf
EndFunction
Function SetAllowEssentialKills(bool b)
If(b)
SneakToolsAllowEssentialKill.SetValueInt(1)
Else
SneakToolsAllowEssentialKill.SetValueInt(0)
EndIf
EndFunction
Function SetAllowThroatSlits(bool b)
allowThroatSlits = b
EndFunction
Function SetAllowKnockOuts(bool b)
allowKnockOuts = b
EndFunction
Function SetAllowSleepKills(bool b)
allowSleepKills = b
EndFunction
Function SetAllowCrafting(bool b)
allowCrafting = b
EndFunction
Function ActivateMod()
RegisterForSingleUpdate(3)
EndFunction
Function DeactivateMod()
UnregisterForUpdate()
SneakToolsAliasesQuest.Stop()
EndFunction
Function FixJumpingHeight()
Game.SetGameSettingFloat("fJumpHeightMin", originalJumpHeight)
EndFunction
Event OnReset()
RealCrimeGoldEastMarchViolent=0
RealCrimeGoldFalkreathViolent =0
RealCrimeGoldHaafingarViolent =0
RealCrimeGoldHjaalmarchViolent =0
RealCrimeGoldPaleViolent =0
RealCrimeGoldReachViolent =0
RealCrimeGoldRiftViolent =0
RealCrimeGoldWhiterunViolent =0
RealCrimeGoldWinterholdViolent =0
RealCrimeGoldOrcsViolent = 0
RealCrimeGoldDLC2CrimeRavenRockViolent = 0
RealCrimeGoldEastMarchNonViolent=0
RealCrimeGoldFalkreathNonViolent =0
RealCrimeGoldHaafingarNonViolent =0
RealCrimeGoldHjaalmarchNonViolent =0
RealCrimeGoldPaleNonViolent =0
RealCrimeGoldReachNonViolent =0
RealCrimeGoldRiftNonViolent =0
RealCrimeGoldWhiterunNonViolent =0
RealCrimeGoldWinterholdNonViolent =0
RealCrimeGoldOrcsNonViolent = 0
RealCrimeGoldDLC2CrimeRavenRockNonViolent = 0
FakeCrimeGoldEastMarchViolent =0
FakeCrimeGoldFalkreathViolent =0
FakeCrimeGoldHaafingarViolent =0
FakeCrimeGoldHjaalmarchViolent =0
FakeCrimeGoldPaleViolent =0
FakeCrimeGoldReachViolent =0
FakeCrimeGoldRiftViolent =0
FakeCrimeGoldWhiterunViolent =0
FakeCrimeGoldWinterholdViolent =0
FakeCrimeGoldOrcsViolent = 0
FakeCrimeGoldDLC2CrimeRavenRockViolent = 0
FakeCrimeGoldEastMarchNonViolent =0
FakeCrimeGoldFalkreathNonViolent =0
FakeCrimeGoldHaafingarNonViolent =0
FakeCrimeGoldHjaalmarchNonViolent =0
FakeCrimeGoldPaleNonViolent =0
FakeCrimeGoldReachNonViolent =0
FakeCrimeGoldRiftNonViolent =0
FakeCrimeGoldWhiterunNonViolent =0
FakeCrimeGoldWinterholdNonViolent =0
FakeCrimeGoldOrcsNonViolent = 0
FakeCrimeGoldDLC2CrimeRavenRockNonViolent = 0
EndEvent
добавив под каждый столбец это-DLC2CrimeRavenRock
#730
Отправлено
добавив под каждый столбец это-DLC2CrimeRavenRock
Ну, можешь протестировать. С первого взгляда вроде все норм.
Но я детально эту портянку не разбирал, так что всякое может быть =)
Возможно, еще надо будет Property в .esp-файле назначить.
Новая игра только потребуется, скорее всего.
Или полное удаление мода, и создание "чистого сейва".
Квестовые скрипты в сейвы пишутся.
И неужели нет уже готового патча на нексусе?
Трудно поверить.
#731
Отправлено
Ну, можешь протестировать. С первого взгляда вроде все норм.
Но я детально эту портянку не разбирал, так что всякое может быть =)
Возможно, еще надо будет Property в .esp-файле назначить.
Новая игра только потребуется, скорее всего.
Или полное удаление мода, и создание "чистого сейва".
Квестовые скрипты в сейвы пишутся.
И неужели нет уже готового патча на нексусе?
Трудно поверить.
Уже протестил. Без новой игры правда, короче не пашет так. С новой игрой проверю позже. И да, патча нет ибо нынешний автор злюка а прежней забыл добавить скалу как признался.
И я ароде написал скрипт функцию
Scriptname Crime_gold Function SetPlayerReportCrime(bool abReportCrime = true) Game.SetPlayerReportCrime(false) EndFunction
он даже скомпелировался, теперь думаю как его нацепить на шлем шоб работал
#733
Отправлено
И я ароде написал скрипт функцию
Одной функции мало. Скрипты так не работают.
Во-первых, им нужен объект, с которого они будут срабатывать. Скрипт для квеста не будет работать для персонажа.
В заголовке скрипта это должно быть, у тебя этого нет.
Во-вторых, скриптам нужно событие, с которого они будут запускаться. Event. У тебя этого тоже нет.
Сам код функции вне эвентов записан (или даже в другом скрипте), но функция все равно будет вызываться только в каком-то эвенте. Без эвента это все бесполезно.
Я ж говорил - изучай туториалы, Там все это объясняется.
Применительно к скрипту выше - сам видишь, там только функции, без эвентов.
Но теперь вспомни первый скрипт, со шлема (с магического эффекта на шлеме). Вот там как раз эвенты есть, и они ко всем этим функциям и обращаются.
#734
Отправлено
Одной функции мало. Скрипты так не работают.
Во-первых, им нужен объект, с которого они будут срабатывать. Скрипт для квеста не будет работать для персонажа.
В заголовке скрипта это должно быть, у тебя этого нет.
Во-вторых, скриптам нужно событие, с которого они будут запускаться. Event. У тебя этого тоже нет.
Сам код функции вне эвентов записан (или даже в другом скрипте), но функция все равно будет вызываться только в каком-то эвенте. Без эвента это все бесполезно.
Я ж говорил - изучай туториалы, Там все это объясняется.
Применительно к скрипту выше - сам видишь, там только функции, без эвентов.
Но теперь вспомни первый скрипт, со шлема (с магического эффекта на шлеме). Вот там как раз эвенты есть, и они ко всем этим функциям и обращаются.
Вроде проперти под названием прописал, ивенты у того скрипта спёр вместе с ссылками, лишнее стёр оставив как событие заклинание которое привязано к зачарованию которое сейчас часть шлема. Следовательно предпологаю-пока шлем одет функция которую я прописал в ивент должна работать.
Scriptname Crime_gold Actor Property Player Auto Function SetPlayerReportCrime(bool abReportCrime = true) Game.SetPlayerReportCrime(false) EndFunction Event OnEffectStart(Actor akTarget, Actor akCaster) If(akTarget == playerRef) playerRef.AddSpell(SneakToolsWearingMaskAbility, false) Function SetPlayerReportCrime(bool abReportCrime = true) Game.SetPlayerReportCrime(false) EndFunction EndIf EndEvent Event OnEffectFinish(Actor akTarget, Actor akCaster) If(akTarget == playerRef) playerRef.RemoveSpell(SneakToolsWearingMaskAbility) EndIf Event
надеюсь, я правельно всё сделал? Или хоть чуток ближе к правельному? Я вот честно, очень хочу закончить мод за эти 6 дней=)
Сообщение отредактировал angel-deff: 06 июля 2021 - 16:03
#736
Отправлено
Всем привет, помогите пожалуйста с простым скриптом, уже часов 8 бьюсь головой об стену и ничего не получается. Суть в следующем - скрипт вешается на предмет и при одевании проверяется какое-либо условие (например пол нпц) и выполняется что-либо. Проблема в том, что я никак не могу найти REF предмета к которому прикреплен скрипт.
Scriptname AaaScriptName extends ObjectReference event OnEquipped(Actor akActor) ;ObjectReference equipment = self Form equipment = GetBaseObject() if (akActor.GetActorBase().GetSex() == 1) akActor.RemoveItem(equipment, 1) Debug.MessageBox(equipment) endIf endevent
#737
Отправлено
Всем привет, помогите пожалуйста с простым скриптом, уже часов 8 бьюсь головой об стену и ничего не получается. Суть в следующем - скрипт вешается на предмет и при одевании проверяется какое-либо условие (например пол нпц) и выполняется что-либо. Проблема в том, что я никак не могу найти REF предмета к которому прикреплен скрипт.
Scriptname AaaScriptName extends ObjectReference event OnEquipped(Actor akActor) ;ObjectReference equipment = self Form equipment = GetBaseObject() if (akActor.GetActorBase().GetSex() == 1) akActor.RemoveItem(equipment, 1) Debug.MessageBox(equipment) endIf endevent
Попробуй что-то типа такого:
Armor equipment = (self as Form) as Armor
Или сразу "self as Armor", без использования form.
Если совсем никак - переделай систему на ивент OnObjectEquipped и проверяй его с НПСа, а не с предмета.
#738
Отправлено
Попробуй что-то типа такого:
Armor equipment = (self as Form) as ArmorИли сразу "self as Armor", без использования form.
Если совсем никак - переделай систему на ивент OnObjectEquipped и проверяй его с НПСа, а не с предмета.
Спасибо за ответ. Это не работает - MessageBox отображает [AaaScriptName <Item 1 in container (00000014)>], а должен REF брони. Без Form не компилится скрипт. Дело в том, что очень много брони попадает через лвл листы почти всем нпц и делать мужскую версию брони я не буду. И чтобы не было модников-мужск. нпц с бархатным бельем например мне проще на многие предметы повесить скрипт. Вешать его на всех нпц просто не вариант. Не могу понять неужели нельзя никак обратиться в скрипте к его источнику, на который его поцепили?
#739
Отправлено
а должен REF брони
Так броня то удаляется, или нет? Мессаджбокс тебе зачем?
Не могу понять неужели нельзя никак обратиться в скрипте к его источнику, на который его поцепили?
Вообще, self для этого и нужен. Но как он точно работает я уже и не помню. Использовал пару раз всего, вроде бы как раз как в примере выше описал, через двойной "as".
#740
Отправлено
Так броня то удаляется, или нет? Мессаджбокс тебе зачем?
Вообще, self для этого и нужен. Но как он точно работает я уже и не помню. Использовал пару раз всего, вроде бы как раз как в примере выше описал, через двойной "as".
Мессаджбокс для фидбека, чтобы убедиться в правильности переменной. Ничего не удаляется, там или None, или пусто, или [AaaScriptName <Item 1 in container (00000014)>] (если обратиться напрямую к self он даст такой же результат). Сдается мне это все потому, что у объекта нет REF тк он лежит в инвентаре и нужно это как-то реализовывать через пустой квест или типо того.
#741
Отправлено
Добрый день.
Хочу сделать скрипт в котором при активации кнопки исчезала/появлялась определенная стена, однако не просто disable/enable, а чтобы была анимация исчезновения/появления. например через "effectshader property"
Знающие скриптеры подскажите как можно такое реализовать? Нечто похожее с исчезновением есть в Апокрифе у расширяющихся коридоров.
Темы с аналогичным тегами papyrus, help, скрипты, вопросы
Моддинг →
Моддинг Skyrim →
Перенос эффекта призрачного соловья на предмет/оружиеАвтор Alex_andra, 07 янв 2025 |
|
|
||
Моддинг →
Моддинг Skyrim →
Восстановление на основе Зала ДозораАвтор Alex_andra, 11 дек 2023 |
|
|
||
![]() |
Моддинг →
Моддинг Skyrim →
Отстройка ВинтерхолдаАвтор Alex_andra, 10 авг 2023 |
|
|
|
Моддинг →
Моддинг Oblivion →
Скрипт Для СнаряженияАвтор БесездаБойчик, 07 сен 2022 |
|
|
||
Моддинг →
Моддинг Skyrim →
Нужны добровольцы для теста модаАвтор arkadiy111, 11 апр 2022 |
|
|
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 скрытых






