Перейти к контенту
proger_Dencheek

[SoC] Закон Дегтярева

Рекомендуемые сообщения

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

Кстати файл скрипта называется.







--Закон Дегтярева 2012 - 2013
--(c) proger_Dencheek
--Сохранения у костра, доработано Нанобот


--Список всех костров
local kamps = {
	["l01_escape"] = {
		{-142.70085144043, -29.156795501709, -360.901672363281};
		{-206.862411499023, -19.4432373046875, -140.034561157227};
		{-234.855178833008, -19.4951076507568, -156.739364624023};
		{62.983715057373, -0.0834522247314453, 149.336090087891};
		{107.145347595215, -2.30181527137756, -0.569820463657379};
		{115.827072143555, -6.96181488037109, 9.30737209320068};
		{-48.704029083252, -8.99594879150391, -64.3239593505859};
		{111.051071166992, -6.37155914306641, -40.9237365722656};
		{132.516098022461, 0.635487735271454, 309.574249267578};
		{354.820098876953, 15.99427318573, -30.4973049163818};
		{312.704010009766, 4.55094575881958, 118.508911132813}
	};
	["l11_pripyat"] = {
		{-0.0818258374929428, 3.86226654052734, 203.86930847168};
		{-4.02209758758545, 3.58234667778015, 200.165649414063};
		{29.1797122955322, 5.61630439758301, 171.360397338867};
		{29.4245166778564, 5.63630962371826, 181.443344116211};
		{122.423080444336, -1.890953540802, -43.3633270263672};
		{60.3332405090332, -2.66058683395386, 83.7618255615234};
		{142.853820800781, -2.08137178421021, 71.9938659667969};
		{-125.241889953613, -2.82879400253296, 69.817741394043};
		{-110.374237060547, -2.69574403762817, 71.4846572875977};
		{7.13140201568604, -3.10510396957397, 72.2582397460938};
		{28.9352493286133, -1.50765407085419, -223.237731933594};
		{7.26564788818359, -3.68692970275879, -215.723251342773};
		{6.82125473022461, -3.60618209838867, -214.94660949707};
		{-21.819986343384, -1.3940283060074, 52.3991355896};
		{-10.7103252410889, -3.47223567962646, 192.847198486328};
		{-4.02797222137451, 4.09149837493896, 200.151901245117};
		{-8.29381275177002, -2.82073664665222, 202.569580078125};
		{-44.059085845947,-1.868186712265,56.001407623291};
		{-58.078681945801,0.0036701560020447,96.686996459961};
		{-114.05426025391,-1.6458127498627,94.468063354492};
		{-110.74704742432,-1.6525002717972,212.74676513672};
		{-100.19178771973,-1.7205171585083,231.80293273926};
		{-13.232766151428,0.35468593239784,215.62718200684};
		{-24.690061569214,4.3183765411377,199.3431854248};
		{-22.002019882202,0.34818336367607,202.2653503418};
		{-97.456741333008,-1.5676782131195,124.4889831543};
		{-37.326805114746,0.60421240329742,137.74658203125};
		{15.400909423828,0.65895390510559,156.43544006348};
		{32.866645812988,0.33866694569588,177.75659179688};
		{8.4350986480713,-0.032336264848709,186.98301696777};
		{-4.949357509613,-0.049006968736649,184.82713317871};
		{-32.46768951416,1.4011579751968,181.74838256836};
		{-39.773078918457,-0.052427142858505,249.98669433594};
		{38.422233581543,-0.28112202882767,250.46939086914};
		{44.113101959229,-0.27089494466782,260.96844482422};
		{103.63209533691,-0.30125406384468,250.34030151367};
		{104.26877593994,-0.24488696455956,216.87203979492};
		{57.12145614624,8.4490699768066,279.22872924805};
		{191.79113769531,-1.6756583452225,215.61451721191};
		{182.65612792969,-1.5617762804031,95.870666503906};
		{176.4141998291,-1.8483995199203,186.98918151855};
		{133.52600097656,0.33240911364555,112.11037445068};
		{98.668403625488,0.63479089736938,108.2876663208};
		{82.719627380371,-1.87373483181,57.470386505127};
		{34.363342285156,-1.7284260988235,51.629608154297};
		{37.704944610596,-2.063863992691,73.382026672363};
		{102.78958892822,-7.0440945625305,10.488859176636};
		{103.47214508057,-0.40724694728851,-41.256507873535};
		{125.2373046875,-0.59840190410614,-22.503067016602};
		{57.875358581543,-0.44432282447815,-128.9008026123};
		{-30.996294021606,-1.7790416479111,-129.37106323242};
		{-44.088272094727,-1.8759710788727,-83.369255065918};
		{-56.733993530273,-2.0489883422852,-62.304332733154};
		{-152.64985656738,-2.0388472080231,50.406139373779};
		{-99.996536254883,0.096587419509888,22.218542098999};
		{-104.4270324707,2.0580739974976,13.492116928101};
		{-119.01360321045,2.0458180904388,11.280732154846};
		{-100.11185455322,3.8704423904419,-14.759106636047}
	};
	["l02_garbage"] = {
		{102.780395507813, -2.06362509727478, 168.691070556641};
		{43.9079475402832, 0.913499236106873, 242.471725463867};
		{48.0035247802734, 0.939256727695465, 231.251068115234};
		{47.9961814880371, 1.44835138320923, 231.235855102539};
		{-223.852874755859, -7.75284576416016, -136.446502685547};
		{-60.8577003479004, -1.81508350372314, -217.791442871094};
		{-60.9159965515137, 1.34711623191834, 5.23473215103149};
		{-94.6706466674805, -0.938920855522156, -3.63194561004639};
		{-71.6630706787109, -1.86428189277649, 17.1110858917236}
	};
	["l03_agroprom"] = {
		{251.251937866211, 0.482365846633911, 71.4345169067383}
	};
	["l04_darkvalley"] = {
		{-153.282791137695, 1.49332475662231, -186.534103393555};
		{30.0414409637451, -2.38607311248779, 3.18895149230957};
		{-135.852233886719, 1.5106348991394, -520.868103027344};
		{-135.858108520508, 2.0197901725769, -520.8818359375};
		{44.2188835144043, 8.46988201141357, -23.3554706573486};
		{-4.62548017501831, 0.651501178741455, -69.0157012939453};
		{-4.63135480880737, 1.16065645217896, -69.0294494628906};
		{36.7090606689453, 0.915222644805908, -76.8362503051758};
		{34.9048728942871, 1.55522680282593, -31.4747352600098};
		{46.5129165649414, 5.07520484924316, -54.403938293457};
		{46.8307495117188, 1.55521631240845, -54.5505523681641};
		{47.6161918640137, 1.55522680282593, -42.6202735900879};
		{16.8693943023682, 2.49150681495667, -37.9986991882324};
		{22.806921005249, 5.65689659118652, 32.0458297729492};
		{-0.240863651037216, 0.625483512878418, 38.1475677490234};
		{142.263076782227, 0.697487831115723, -272.116455078125};
		{148.449859619141, 0.765969753265381, -232.410568237305};
		{46.5535659790039, 8.5952672958374, -30.9011211395264};
		{35.3917236328125, -1.96477293968201, -56.8773918151855};
		{127.286140441895, 0.685970783233643, -244.807083129883}
	};
	["l05_bar"] = {
		{117.50927734375, 0.537628412246704, 122.167137145996};
		{181.939056396484, 0.532442092895508, 63.6011238098145};
		{223.811630249023, -4.65390348434448, 123.113174438477};
		{205.22770690918, 0.532441139221191, 89.3078460693359};
		{196.750259399414, 0.532444000244141, 121.021156311035};
		{130.167419433594, 0.632442951202393, 60.1279144287109};
		{98.6034851074219, 0.632372140884399, 93.1678161621094}
	};
	["l06_rostok"] = {
		{-185.272232055664, -5.46734237670898, -68.3936157226563};
		{-229.835266113281, 1.80573642253876, 144.879348754883};
		{-263.280364990234, 0.532444477081299, 14.3140602111816};
		{-150.657241821289, 0.532446622848511, 158.718048095703}
	};
	["l07_military"] = {
		{-319.209442138672, -21.8331165313721, 211.009887695313};
		{-220.186569213867, -21.2532329559326, 198.996795654297};
		{-58.331729888916, -9.87343883514404, 26.2865600585938};
		{-190.576187133789, -15.5013427734375, 369.638488769531};
		{-351.199432373047, -13.4716806411743, 396.933898925781};
		{-91.7585906982422, -20.1632080078125, 218.374069213867};
		{1.82472133636475, -6.29224109649658, -26.0736961364746};
		{98.6118621826172, -0.245829582214355, 304.554565429688};
		{-219.167098999023, -21.2903099060059, 203.005401611328};
		{-235.655288696289, -12.121395111084, 52.493293762207};
		{-249.186859130859, -21.8598041534424, 298.142211914063};
		{-176.815719604492, -15.5787620544434, 375.629943847656};
		{78.8476333618164, -7.57722854614258, 334.397979736328};
		{38.7504653930664, -18.0496349334717, 348.825500488281};
		{103.929954528809, -12.5478973388672, 53.0569114685059};
		{-190.353179931641, -15.5013427734375, 369.640441894531};
		{-219.148239135742, -21.2903099060059, 203.019119262695};
		{-58.2131767272949, -10.2146015167236, 26.1218662261963};
		{-58.1156959533691, -10.0276470184326, 26.2390632629395}
	};
	["l08_yantar"] = {
		{94.6223526000977, 0.561150074005127, -2.98932719230652};
		{60.5037612915039, 2.43455338478088, -48.7809638977051};
		{-144.626617431641, -18.5547294616699, -94.4084320068359};
		{-65.7601928710938, -18.4937896728516, -160.299224853516};
		{-2.2613639831543, -8.45954132080078, -12.9203090667725};
		{-77.7441101074219, -18.5547313690186, -36.3784332275391};
		{-13.515175819397, -17.8267631530762, -98.1257553100586};
		{-24.6126174926758, -18.3902740478516, -118.865715026855};
		{-56.9976577758789, -18.5547256469727, -135.392608642578};
		{-85.0214614868164, -16.7921752929688, -189.658401489258};
		{25.048038482666, -2.85361337661743, -47.6510009765625};
		{-245.293060302734, -18.2728939056396, -44.139575958252};
		{-201.592697143555, -17.4636096954346, -44.1488876342773};
		{-160.500137329102, -18.0348320007324, -44.1653671264648};
		{-145.004745483398, -17.995885848999, -64.3291397094727};
		{-113.056015014648, -18.5547275543213, -96.2491836547852};
		{-84.8795394897461, -18.5547294616699, -74.9030227661133};
		{-71.7276763916016, -17.3965358734131, -95.5110397338867};
		{-56.5092391967773, -17.0760765075684, -64.0146179199219};
		{-54.0915832519531, -17.1550521850586, -33.6040344238281};
		{-26.4910125732422, -17.8942718505859, -73.2229919433594};
		{-13.5672206878662, 1.67224895954132, -0.617348670959473};
		{116.615409851074, 2.64478874206543, -129.129989624023};
		{-56.156135559082, -18.1227893829346, -21.5535640716553};
		{160.101669311523, -5.72690677642822, -89.7528228759766};
		{-6.52652645111084, 1.8343071937561, -35.3106956481934};
		{-0.367158889770508, 2.61751770973206, -41.6589546203613};
		{36.9427299499512, 0.808107614517212, 14.3698797225952};
		{5.69572067260742, 7.45390367507935, -10.3164882659912};
		{-9.31275272369385, 0.684641361236572, -19.8556861877441};
		{44.0986595153809, 0.893310546875, -65.0506439208984};
		{60.5037612915039, 2.43455338478088, -48.7809638977051};
		{94.6223526000977, 0.561150074005127, -2.98932719230652}
	};
	["l08u_brainlab"] = {
		{48.748477935791, 6.11764430999756, 10.379448890686};
		{29.0330333709717, 6.11441612243652, 17.3277111053467};
		{-117.900375366211, 14.7282190322876, -16.8620471954346};
		{151.183502197266, 52.0161933898926, -13.7637758255005};
		{143.956237792969, 36.3034210205078, -17.4440422058105}
	};
	["l10_radar"] = {
		{59.7110557556152, -3.8439302444458, -47.2843437194824};
		{56.8461608886719, 0.606598794460297, 14.2581787109375};
		{187.427993774414, -11.6809978485107, 81.4190902709961};
		{19.6260833740234, 0.32436466217041, -56.8068008422852};
		{57.0798301696777, 0.619957983493805, 14.5953855514526};
		{59.7717018127441, -3.84248089790344, -47.3596878051758};
		{106.947113037109, 0.473589360713959, 27.3113842010498};
		{278.922393798828, -41.8700828552246, 57.302131652832};
		{382.78271484375, -33.3155403137207, 146.487228393555};
		{442.287078857422, -49.445442199707, -1.97845065593719};
		{614.138366699219, -51.7750473022461, -299.019165039063};
		{587.496765136719, -53.5436706542969, -252.334411621094};
		{524.85595703125, -48.257698059082, -244.897613525391};
		{581.446594238281, -62.4813766479492, -179.182159423828};
		{590.781372070313, -49.6141548156738, 18.3068237304688};
		{632.143005371094, -43.304988861084, 192.708160400391}
	};
	["l12_stancia_2"] = {
		{281.078857421875, 44.7726211547852, 61.5678100585938};
		{491.835174560547, 60.9826202392578, 122.949066162109};
		{297.708801269531, 41.7247581481934, 63.9899520874023};
		{567.798461914063, 19.2470169067383, 270.52978515625};
		{575.188842773438, 19.2470207214355, 274.577453613281};
		{577.089233398438, 19.2470207214355, 283.126647949219};
		{569.97900390625, 19.2470283508301, 290.706604003906};
		{561.280090332031, 19.2470245361328, 288.91455078125};
		{557.026611328125, 19.2470207214355, 281.240203857422};
		{560.00537109375, 19.2470169067383, 274.093841552734};
		{10.5312662124634, 29.2416248321533, 271.623016357422};
		{42.007698059082, 6.07203388214111, 186.186676025391};
		{14.9137678146362, 5.5067343711853, 159.304107666016};
		{47.4557456970215, 5.85940074920654, 132.133987426758};
		{10.1000318527222, 5.61893510818481, 195.122573852539};
		{31.9329643249512, 5.97116565704346, 126.633193969727};
		{17.0294609069824, 5.92116975784302, 106.887054443359}
	}
}
local namelev = {
	["l01_escape"] = "kordon";
	["l11_pripyat"] = "pripyat";
	["l02_garbage"] = "svalka";
	["l03_agroprom"] = "agroprom";
	["l04_darkvalley"] = "4erna_dolina";
	["l05_bar"] = "bar";
	["l06_rostok"] = "dik_teritori";
	["l07_military"] = "voen_sklad";
	["l08_yantar"] = "yantar";
	["l08u_brainlab"] = "X16lab";
	["l10_radar"] = "radar";
	["l12_stancia_2"] = "aes2"
}
local con = nil
local con_command = "mm_net_player_name"
local def_value = "_"

--Апдейт клавиш
function update()
	if not con then
		con = get_console()
		con:execute(con_command.." "..def_value)
		for k,val in pairs(_G[script_name()]) do
			if type(val) == "function" and DIK_keys[string.upper(k)] then
				local key = "k"..string.gsub(k,"dik_","")
				con:execute("bind_console "..con_command.." "..k.." "..key)
			end
		end
	else
		local str = con:get_string(con_command)
		if str ~= def_value and this[str] then
			this[str]()
			con:execute(con_command.." "..def_value)
		end
	end
--Заносим количество спичек на HUD
local cs = get_hud():GetCustomStatic("den_spichki")
	if cs == nil then
		get_hud():AddCustomStatic("den_spichki_img", true)
		get_hud():AddCustomStatic("den_spichki", true)
		cs = get_hud():GetCustomStatic("den_spichki")
	end
local msg = den.load_variable("den_spichka", 0)
	if tonumber(msg) < 0 then
		msg = "0"
	end
	if cs ~= nil then
		cs:wnd():SetText(msg)
	end
end

--Нажатие клавиши F5, безопасное сохранение
function dik_f5(fileName)
local _,fail = pcall(save,fileName)
	if fail ~= nil then
		den.cout("save_failed!!!", tostring(fail))
		den.sms("Неудалось произвести сохранение! Попробуйте сохранится заново! Пожалуйста, вышлите эту ошибку автору модификации(Denisok1997123@spaces.ru).  Ошибка: \\n"..tostring(fail), "proger_Dencheek")
	end
end
function dik_numlock()
	if not has_alife_info("inf_not_hud") then
		level.hide_indicators()
		db.actor:give_info_portion("inf_not_hud")
	else
		level.show_indicators()
		db.actor:disable_info_portion("inf_not_hud")
	end
end
function dik_numpad5()
den_item.on_itm_detonator()
end
function dik_numpad4()
db.actor:eat(db.actor:object("itm_dinamit"))
end

--Сохранение
function save(fileName)
local snd = sound_object([[device\pda\pda_news]])
snd:play_no_feedback(db.actor, sound_object.s2d,0, vector():set(0, 0 ,0), 2.0)
local sp = den.load_variable("den_spichka", 0)
den.save_variable("den_save", "true")
local lv = level.name()
local shans = 1
local flag = false
	if fileName == nil then
		--fileName = user_name().."_quicksave"
		fileName = "Zakon_Dehterev_"..namelev[lv]
		
	end
	if kamps[lv] ~= nil then
		for k,val in pairs(kamps[lv]) do
			if db.actor:position():distance_to(vector():set(val[1],val[2],val[3])) <= 5 then
				if sp > 0 then
					if db.actor:object("itm_spichki_2") then
						shans = math.random(1,3)
					end
					if shans == 1 then
						if flag ~= true then
							flag = true
						end
						den.save_variable("den_spichka", sp-1)
						--den_callbacks.on_safe(fileName)
						fileName = fileName.."_"..tostring(k).."_qsave"
						get_console():execute("save "..fileName)
						den.save_variable("den_save", "false")
					else
						den.sms("Сохранение не удалось! Слишком испорченные спички!")
					end
				else
					den.sms("Сохранение невозможно! Нет спичек!")
				end
			else
				if k == #kamps[lv] and flag == false then
					if sp > 0 then
						den.sms("Сохранение невозможно! По близости нет костра!")
					else
						den.sms("Сохранение невозможно! По близости нет костра и спичек!")
					end
				end
			end
		end
	else
		if lv == "l03u_agr_underground" or lv == "l04u_labx18" or lv == "l12u_control_monolith" or
		lv == "l12u_sarcofag" or lv == "l10u_bunker" or lv == "l12_stancia" then
			--den_callbacks.on_safe(fileName)
			get_console():execute("save "..fileName)
			den.save_variable("den_save", "false")
		else
			if sp > 0 then
				den.sms("Сохранение невозможно! По близости нет костра!")
			else
				den.sms("Сохранение невозможно! По близости нет костра и спичек!")
			end
		end
	end
end

 

 

 

В общем надо скрипт протестить, имя сохранения; названия уровни плюс номер костра. Я сейчас в другое играю, и только сейчас вспомнил про эту фишку, в общем должно работать.

Изменено пользователем НаноБот

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

Ссылка на комментарий

Решил попробовать.

Понял, почему почти два года в теме тишина.

Мод не просто глючный, мод корявый.

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

Переходы с локации на локацию без предупреждения бесят неимоверно.

Когда забираешь арты из тайника они опять бьют по мозгам до смерти...

Монолитовцы стоят, целясь во все стороны и не реагируют, даже если их вырезать ножом.

Кабаны, покрытые композитной броней, по-ходу.

Куча других мелких корявостей.

 

Не надо.

Не ставьте и не играйте.

  • Не нравится 1
  • Согласен 1
Ссылка на комментарий

Всем привет ! хотел узнать - кто-нить нашел где переход с ЧАЭС-2 ? а то я всех зомбарей убил а как перейти на ЧАЭС-1 так и не нашел. Возле саркофага, на углу нашел подвал(где зигзагообразная лестница на крышу) но он с "глюком" - когда чуть ниже спустишься, там прозрачные текстуры , если пойдешь то просто проваливаешся в них и топчишся на месте. Короче говоря, кто нашел переход на ЧАЭС-1, отпишитесь плиз !

 

(дополнение к моему посту )
Тут я стою спиной к подвалу (вход у зигзагообразной лестницы)
a16b6bd68851e404ec9e1ee78c79e83525c0cb247246961.jpg
Здесь я уже в подвале, провалился сквозь текстуры
0c5600bbecc8a01f0285e41496db697125c0cb247247038.jpg
Если кому надо могу дать сохраненку, после того как завалил всех зомбарей и монолит

Изменено пользователем BFG
Ссылка на комментарий

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

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    Ни один зарегистрированный пользователь не просматривает эту страницу.

AMK-Team.ru

×
×
  • Создать...