DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ SetTargetValueFloatDefault()

void GetCategoryMask::SetTargetValueFloatDefault ( int mat_id,
int param_idx )
protected

См. определение в файле PPERequestPlatformsBase.c строка 611

613{
614 protected bool m_IsRunning; //helps determine if the requester has been stopped or not
615 protected bool m_ValuesSent;
616 protected int m_IDX;
617
618 protected bool m_Valid = false;
619
620 protected ref map<int,ref map<int,ref PPERequestParamDataBase>> m_RequestDataStructure; // <material<param_id,data>> // parameter data objects are singletons
621
622 void PPERequesterBase(int requester_IDX)
623 {
624 m_Valid = PPERequesterBank.VerifyRequester(this);
625
626 m_IDX = requester_IDX;
627 m_ValuesSent = true;
628 m_IsRunning = false;
630 }
631
633 void SetRequesterUpdating(bool state)
634 {
635 if (!m_Valid)
636 {
637 Debug.Log("" + this + " not valid!");
638 return;
639 }
640
641 PPEManagerStatic.GetPPEManager().SetRequestUpdating(this,state);
642
643 //TODO - separate into its own function?
644 if (state)
645 PPEManagerStatic.GetPPEManager().SetRequestActive(this,true);
646 }
647
648 void Start(Param par = null)
649 {
650 OnStart(par);
651 m_IsRunning = true;
652 }
653
654 void Stop(Param par = null)
655 {
657 return;
658
659 OnStop(par);
660 m_IsRunning = false;
661 }
662
663 bool IsRequesterRunning()
664 {
665 return m_IsRunning;
666 }
667
669 void SetRequesterIDX(int idx)
670 {
671 m_IDX = idx;
672 }
673
675 int GetRequesterIDX()
676 {
677 return m_IDX;
678 }
679
681 int GetCategoryMask()
682 {
683 return PPERequesterCategory.NONE;
684 }
685
686 //SETTERS//
687 //vvvvvvv//
688 protected void SetTargetValueBool(int mat_id, int param_idx, bool val, int priority_layer, int operator = PPOperators.SET)
689 {
691 return;
692
693 PPERequestParamDataBool data = PPERequestParamDataBool.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_BOOL));
694 data.SetPriorityLayer(priority_layer);
695 data.SetInteractionMask(operator);
696
697 data.m_BoolTarget = val;
698 data.m_BoolLast = data.m_BoolCurrent;
699
700 if (data.m_BoolTarget != data.m_BoolCurrent || data.IsSettingDefaultValues())
701 {
702 data.SetSettingDefaultValues(false);
703 data.SetDataActive(true);
704
706 }
707 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBool | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
708 }
709
710 protected void SetTargetValueBoolDefault(int mat_id, int param_idx)
711 {
712 //TODO - running check and cleanup rework (elsewhere!)
713 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
714 return;
715
716 PPERequestParamDataBool data = PPERequestParamDataBool.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_BOOL));
717 data.m_BoolLast = data.m_BoolCurrent;
718 if (!data.IsSettingDefaultValues())
719 {
720 data.SetSettingDefaultValues(true);
721
723 }
724 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBoolDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
725 }
726
727 protected void SetTargetValueInt(int mat_id, int param_idx, bool relative, int val, int priority_layer, int operator = PPOperators.SET)
728 {
730 return;
731
732 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
733 data.SetPriorityLayer(priority_layer);
734 data.SetInteractionMask(operator);
735
736 data.m_IntTarget = val;
737 data.m_IntLast = data.m_IntCurrent;
738 if (data.m_IntTarget != data.m_IntCurrent || data.IsSettingDefaultValues())
739 {
740 data.SetSettingDefaultValues(false);
741 data.SetDataActive(true);
742
744 }
745 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueInt | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
746 }
747
748 protected void SetTargetValueIntDefault(int mat_id, int param_idx)
749 {
750 //TODO - running check and cleanup rework (elsewhere!)
751 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
752 return;
753
754 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
755 data.m_IntLast = data.m_IntCurrent;
756 if (!data.IsSettingDefaultValues())
757 {
758 data.SetSettingDefaultValues(true);
759
761 }
762 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueIntDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
763 }
764
765 protected void SetTargetValueFloat(int mat_id, int param_idx, bool relative, float val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
766 {
768 return;
769
770 PPERequestParamDataFloat data = PPERequestParamDataFloat.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_FLOAT));
771 data.SetPriorityLayer(priority_layer);
772 data.SetInteractionMask(operator);
773
774 data.m_FloatFormerTarget = data.m_FloatTarget;
775 data.m_FloatTarget = RelativizeValue(val,PPEConstants.VAR_TYPE_FLOAT,mat_id,param_idx,relative);
776 data.m_FloatLast = data.m_FloatCurrent;
777 data.m_FloatStart = data.m_FloatCurrent;
778 if (data.m_FloatTarget != data.m_FloatCurrent || data.IsSettingDefaultValues())
779 {
780 data.SetSettingDefaultValues(false);
781 data.SetDataActive(true);
782
784 }
785 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloat | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
786 }
787
788 protected void SetTargetValueFloatDefault(int mat_id, int param_idx)
789 {
790 //TODO - running check and cleanup rework (elsewhere!)
791 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
792 return;
793
794 PPERequestParamDataFloat data = PPERequestParamDataFloat.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_FLOAT));
795 data.m_FloatFormerTarget = data.m_FloatTarget;
796 data.m_FloatLast = data.m_FloatCurrent;
797 data.m_FloatStart = data.m_FloatCurrent;
798 if (!data.IsSettingDefaultValues())
799 {
800 data.SetSettingDefaultValues(true);
801
803 }
804 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloatDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
805 }
806
807 protected void SetTargetValueColor(int mat_id, int param_idx, array<float> val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
808 {
810 return;
811
812 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
813 data.SetPriorityLayer(priority_layer);
814 data.SetInteractionMask(operator);
815 data.m_ColorFormerTarget = data.m_ColorTarget;
816
817 data.m_ColorTarget.Copy(val);
818
819 data.m_ColorLast = data.m_ColorCurrent;
820 data.m_ColorStart = data.m_ColorCurrent;
821 //if (data.m_ColorTarget != data.m_ColorCurrent)
822 {
823 data.SetSettingDefaultValues(false);
824 data.SetDataActive(true);
825
827 }
828 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColor | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
829 }
830
831 protected void SetTargetValueColorDefault(int mat_id, int param_idx)
832 {
833 //TODO - running check and cleanup rework (elsewhere!)
834 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
835 return;
836
837 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
838 data.m_ColorFormerTarget = data.m_ColorTarget;
839 data.m_ColorLast = data.m_ColorCurrent;
840 data.m_ColorStart = data.m_ColorCurrent;
841 if (!data.IsSettingDefaultValues())
842 {
843 data.SetSettingDefaultValues(true);
844
846 }
847 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColorDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
848 }
849
850 /*protected void SetTargetValueVector(int mat_id, int param_idx, bool relative, vector val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
851 {
852 }
853
854 void SetTargetValueTexture(int mat_id, int param_idx, string val, int priority_layer, int mask, bool override_priority = false)
855 {
856 }*/
857
858 /*void SetTargetValueResource(int mat_id, int param_idx, string val, int priority_layer, int mask, bool override_priority = false)
859 {
860 }*/
861
863 protected void QueueValuesSend()
864 {
865 m_ValuesSent = false;
866 //m_IsRunning = true;
868 }
869
871 PPERequestParamDataBase GetRequestData(int mat_id, int param_idx, int type)
872 {
874 if ( m_RequestDataStructure.Get(mat_id) )
875 {
876 if (m_RequestDataStructure.Get(mat_id).Get(param_idx))
877 {
878 data = m_RequestDataStructure.Get(mat_id).Get(param_idx);
879 }
880 else
881 {
882 data = PrepareData(mat_id,param_idx,type);
883 m_RequestDataStructure.Get(mat_id).Set(param_idx,data);
884 }
885 }
886 else
887 {
888 data = PrepareData(mat_id,param_idx,type);
890 temp_map.Set(param_idx,data);
891 m_RequestDataStructure.Set(mat_id, temp_map);
892 }
893
894 if (!data)
895 {
896 Error("GetRequestData | no data found in the structure");
897 }
898
899 data.m_Requester = this;
900
901 return data;
902 }
903
904 protected PPERequestParamDataBase PrepareData(int mat_id, int param_idx, int type)
905 {
907 switch (type)
908 {
909 case PPEConstants.VAR_TYPE_BOOL:
910 data = new PPERequestParamDataBool(m_IDX, mat_id, param_idx);
911 break;
912
913 case PPEConstants.VAR_TYPE_INT:
914 data = new PPERequestParamDataInt(m_IDX, mat_id, param_idx);
915 break;
916
917 case PPEConstants.VAR_TYPE_FLOAT:
918 data = new PPERequestParamDataFloat(m_IDX, mat_id, param_idx);
919 break;
920
921 case PPEConstants.VAR_TYPE_COLOR:
922 data = new PPERequestParamDataColor(m_IDX, mat_id, param_idx);
923 break;
924 }
925 return data;
926 }
927
928 // unused?
930 {
932 }
933
934 protected void ClearRequesterData()
935 {
937 }
938
940 {
941 PPEManagerStatic.GetPPEManager().SendMaterialValueData(data);
942 }
943
944 //EVENTS//
945 //vvvvvv//
946 void OnUpdate(float delta)
947 {
948 //DbgPrnt("PPEDebug | PPERequesterBase | OnUpdate");
949
950 if ( !m_ValuesSent )
951 {
952 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
953 {
954 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
955 {
956 SendCurrentValueData(m_RequestDataStructure.GetElement(i).GetElement(j)); //map<int,ref map<int,PPERequestParamDataBase>> //<material<param,data>>
957 }
958 }
959 m_ValuesSent = true;
960 }
962 }
963
964 protected void OnStart(Param par = null)
965 {
967 }
968
970 protected void OnStop(Param par = null)
971 {
972 //DbgPrnt("PPEDebug | " + this + " | OnStop");
975 }
976
978 protected float RelativizeValue(float value, int var_type, int mat_id, int param_id, bool relative)
979 {
980 float ret = value;
981 if (!relative) //if not already relative...
982 {
983 switch (var_type)
984 {
985 case PPEConstants.VAR_TYPE_FLOAT:
986 PPETemplateDefFloat p_float = PPETemplateDefFloat.Cast(PPEManagerStatic.GetPPEManager().GetPostProcessDefaultValues(mat_id,param_id));
987 ret = Math.InverseLerp(p_float.param3, p_float.param4, ret);
988 ret = Math.Clamp(ret,0.0,1.0);
989 break;
990 }
991 }
992 //Print("RelativizeValue: " + ret);
993
994 return ret;
995 }
996
998 protected void SetDefaultValuesAll()
999 {
1000 //<material<param_id,data>>
1001 PPERequestParamDataBase req_data;
1002
1003 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
1004 {
1005 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
1006 {
1007 req_data = m_RequestDataStructure.GetElement(i).GetElement(j);
1008
1009 if (!req_data.IsDataActive())
1010 continue;
1011
1012 switch (req_data.GetVarType())
1013 {
1014 case PPEConstants.VAR_TYPE_BOOL:
1016 break;
1017
1018 case PPEConstants.VAR_TYPE_INT:
1020 break;
1021
1022 case PPEConstants.VAR_TYPE_FLOAT:
1024 break;
1025
1026 case PPEConstants.VAR_TYPE_COLOR:
1028 break;
1029 }
1030 }
1031 }
1032 }
1033
1034 void DbgPrnt(string text)
1035 {
1036 //Debug.Log(""+text);
1037 }
1038}
1039
1041// Base requester platforms //
1043
1045{
1046 override int GetCategoryMask()
1047 {
1048 return PPERequesterCategory.GAMEPLAY_EFFECTS;
1049 }
1050}
1051
1053{
1054 override int GetCategoryMask()
1055 {
1056 return PPERequesterCategory.MENU_EFFECTS;
1057 }
1058}
map
Определения ControlsXboxNew.c:4
void Start()
Plays all elements this effects consists of.
Определения Effect.c:155
PPOperators
PP operators, specify operation between subsequent layers.
Определения PPEConstants.c:53
PPERequesterCategory
Определения PPEConstants.c:29
Param4< string, float, float, float > PPETemplateDefFloat
Определения PPEConstants.c:87
void PPERequestParamDataBool(int requester_idx, int mat_id, int param_id, int data_type=0, int priority=0, int mask=PPOperators.SET, bool relative=false)
Определения PPERequestData.c:111
void PPERequestParamDataFloat(int requester_idx, int mat_id, int param_id, int data_type=0, int priority=0, int mask=PPOperators.SET, bool relative=false)
Определения PPERequestData.c:142
bool m_IsRunning
Определения PPERequestPlatformsBase.c:437
void SetTargetValueBoolDefault(int mat_id, int param_idx)
Определения PPERequestPlatformsBase.c:533
void SendCurrentValueData(PPERequestParamDataBase data)
Определения PPERequestPlatformsBase.c:762
void SetTargetValueBool(int mat_id, int param_idx, bool val, int priority_layer, int operator=PPOperators.SET)
Определения PPERequestPlatformsBase.c:511
ref map< int, ref map< int, ref PPERequestParamDataBase > > m_RequestDataStructure
Определения PPERequestPlatformsBase.c:443
void OnStart(Param par=null)
Определения PPERequestPlatformsBase.c:787
void SetTargetValueFloatDefault(int mat_id, int param_idx)
Определения PPERequestPlatformsBase.c:611
int GetRequesterIDX()
Returns requester index.
Определения PPERequestPlatformsBase.c:498
map< int, ref map< int, ref PPERequestParamDataBase > > GetActiveRequestStructure()
Определения PPERequestPlatformsBase.c:752
int m_IDX
Определения PPERequestPlatformsBase.c:439
bool IsRequesterRunning()
Определения PPERequestPlatformsBase.c:486
void SetTargetValueColorDefault(int mat_id, int param_idx)
Определения PPERequestPlatformsBase.c:654
void SetRequesterIDX(int idx)
automatically assigned by PPERequesterBank
Определения PPERequestPlatformsBase.c:492
float RelativizeValue(float value, int var_type, int mat_id, int param_id, bool relative)
converts all values used to relative values (if not relative already)
Определения PPERequestPlatformsBase.c:801
void SetTargetValueFloat(int mat_id, int param_idx, bool relative, float val, int priority_layer, int operator=PPOperators.ADD_RELATIVE)
Определения PPERequestPlatformsBase.c:588
void DbgPrnt(string text)
Определения PPERequestPlatformsBase.c:857
void SetDefaultValuesAll()
Sets all requested values to default, ignoring them in further calculations.
Определения PPERequestPlatformsBase.c:821
void QueueValuesSend()
Sets this requester to update in the manager.
Определения PPERequestPlatformsBase.c:686
void SetTargetValueColor(int mat_id, int param_idx, array< float > val, int priority_layer, int operator=PPOperators.ADD_RELATIVE)
Определения PPERequestPlatformsBase.c:630
bool m_Valid
Определения PPERequestPlatformsBase.c:441
void SetRequesterUpdating(bool state)
Has to be set for the requester to be handled.
Определения PPERequestPlatformsBase.c:456
void PPERequesterBase(int requester_IDX)
Определения PPERequestPlatformsBase.c:445
class PPERequesterBase GetCategoryMask()
mask for mass-handling methods like 'StopAllEffects'
Определения PPERequestPlatformsBase.c:436
void SetTargetValueInt(int mat_id, int param_idx, bool relative, int val, int priority_layer, int operator=PPOperators.SET)
Определения PPERequestPlatformsBase.c:550
void SetTargetValueIntDefault(int mat_id, int param_idx)
Определения PPERequestPlatformsBase.c:571
PPERequestParamDataBase GetRequestData(int mat_id, int param_idx, int type)
returns request data for specific parameter, or creates one if one does not exist in this request yet...
Определения PPERequestPlatformsBase.c:694
PPERequestParamDataBase PrepareData(int mat_id, int param_idx, int type)
Определения PPERequestPlatformsBase.c:727
bool m_ValuesSent
Определения PPERequestPlatformsBase.c:438
void ClearRequesterData()
Определения PPERequestPlatformsBase.c:757
@ Count
Определения RandomGeneratorSyncManager.c:8
static void Log(string message=LOG_DEFAULT, string plugin=LOG_DEFAULT, string author=LOG_DEFAULT, string label=LOG_DEFAULT, string entity=LOG_DEFAULT)
Prints debug message with normal prio.
Определения Debug.c:122
Определения Debug.c:2
Определения EnMath.c:7
static PPEManager GetPPEManager()
Returns the manager instance singleton.
Определения PPEManager.c:27
Static component of PPE manager, used to hold the instance.
Определения PPEManager.c:3
PPERequesterBase m_Requester
Определения PPERequestData.c:4
int GetParameterID()
Определения PPERequestData.c:74
int GetMaterialID()
Определения PPERequestData.c:69
bool IsDataActive()
Определения PPERequestData.c:49
int GetVarType()
Определения PPERequestData.c:79
Data for one material parameter, requester side.
Определения PPERequestData.c:3
base, not to be used directly, would lead to layering collisions!
Определения PPERBloodLoss.c:2
Base Param Class with no parameters. Used as general purpose parameter overloaded with Param1 to Para...
Определения param.c:12
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
void Error(string err)
Messagebox with error message.
Определения EnDebug.c:90
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
static proto float InverseLerp(float a, float b, float value)
Calculates the linear value that produces the interpolant value within the range [a,...
void OnStop()
Определения Sound.c:211
void Stop()
Stops all elements this effect consists of.
Определения Effect.c:181
proto native void OnUpdate()
Определения tools.c:349

Используется в PPERequester_GameplayBase::SetNVMode() и PPERequester_GameplayBase::SetValuesIronsights().