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

◆ SetTargetValueColorDefault()

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

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

656{
657 protected bool m_IsRunning; //helps determine if the requester has been stopped or not
658 protected bool m_ValuesSent;
659 protected int m_IDX;
660
661 protected bool m_Valid = false;
662
663 protected ref map<int,ref map<int,ref PPERequestParamDataBase>> m_RequestDataStructure; // <material<param_id,data>> // parameter data objects are singletons
664
665 void PPERequesterBase(int requester_IDX)
666 {
667 m_Valid = PPERequesterBank.VerifyRequester(this);
668
669 m_IDX = requester_IDX;
670 m_ValuesSent = true;
671 m_IsRunning = false;
673 }
674
676 void SetRequesterUpdating(bool state)
677 {
678 if (!m_Valid)
679 {
680 Debug.Log("" + this + " not valid!");
681 return;
682 }
683
684 PPEManagerStatic.GetPPEManager().SetRequestUpdating(this,state);
685
686 //TODO - separate into its own function?
687 if (state)
688 PPEManagerStatic.GetPPEManager().SetRequestActive(this,true);
689 }
690
691 void Start(Param par = null)
692 {
693 OnStart(par);
694 m_IsRunning = true;
695 }
696
697 void Stop(Param par = null)
698 {
700 return;
701
702 OnStop(par);
703 m_IsRunning = false;
704 }
705
706 bool IsRequesterRunning()
707 {
708 return m_IsRunning;
709 }
710
712 void SetRequesterIDX(int idx)
713 {
714 m_IDX = idx;
715 }
716
718 int GetRequesterIDX()
719 {
720 return m_IDX;
721 }
722
724 int GetCategoryMask()
725 {
726 return PPERequesterCategory.NONE;
727 }
728
729 //SETTERS//
730 //vvvvvvv//
731 protected void SetTargetValueBool(int mat_id, int param_idx, bool val, int priority_layer, int operator = PPOperators.SET)
732 {
734 return;
735
736 PPERequestParamDataBool data = PPERequestParamDataBool.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_BOOL));
737 data.SetPriorityLayer(priority_layer);
738 data.SetInteractionMask(operator);
739
740 data.m_BoolTarget = val;
741 data.m_BoolLast = data.m_BoolCurrent;
742
743 if (data.m_BoolTarget != data.m_BoolCurrent || data.IsSettingDefaultValues())
744 {
745 data.SetSettingDefaultValues(false);
746 data.SetDataActive(true);
747
749 }
750 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBool | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
751 }
752
753 protected void SetTargetValueBoolDefault(int mat_id, int param_idx)
754 {
755 //TODO - running check and cleanup rework (elsewhere!)
756 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
757 return;
758
759 PPERequestParamDataBool data = PPERequestParamDataBool.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_BOOL));
760 data.m_BoolLast = data.m_BoolCurrent;
761 if (!data.IsSettingDefaultValues())
762 {
763 data.SetSettingDefaultValues(true);
764
766 }
767 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBoolDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
768 }
769
770 protected void SetTargetValueInt(int mat_id, int param_idx, bool relative, int val, int priority_layer, int operator = PPOperators.SET)
771 {
773 return;
774
775 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
776 data.SetPriorityLayer(priority_layer);
777 data.SetInteractionMask(operator);
778
779 data.m_IntTarget = val;
780 data.m_IntLast = data.m_IntCurrent;
781 if (data.m_IntTarget != data.m_IntCurrent || data.IsSettingDefaultValues())
782 {
783 data.SetSettingDefaultValues(false);
784 data.SetDataActive(true);
785
787 }
788 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueInt | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
789 }
790
791 protected void SetTargetValueIntDefault(int mat_id, int param_idx)
792 {
793 //TODO - running check and cleanup rework (elsewhere!)
794 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
795 return;
796
797 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
798 data.m_IntLast = data.m_IntCurrent;
799 if (!data.IsSettingDefaultValues())
800 {
801 data.SetSettingDefaultValues(true);
802
804 }
805 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueIntDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
806 }
807
808 protected void SetTargetValueFloat(int mat_id, int param_idx, bool relative, float val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
809 {
811 return;
812
813 PPERequestParamDataFloat data = PPERequestParamDataFloat.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_FLOAT));
814 data.SetPriorityLayer(priority_layer);
815 data.SetInteractionMask(operator);
816
817 data.m_FloatFormerTarget = data.m_FloatTarget;
818 data.m_FloatTarget = RelativizeValue(val,PPEConstants.VAR_TYPE_FLOAT,mat_id,param_idx,relative);
819 data.m_FloatLast = data.m_FloatCurrent;
820 data.m_FloatStart = data.m_FloatCurrent;
821 if (data.m_FloatTarget != data.m_FloatCurrent || data.IsSettingDefaultValues())
822 {
823 data.SetSettingDefaultValues(false);
824 data.SetDataActive(true);
825
827 }
828 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloat | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
829 }
830
831 protected void SetTargetValueFloatDefault(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 PPERequestParamDataFloat data = PPERequestParamDataFloat.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_FLOAT));
838 data.m_FloatFormerTarget = data.m_FloatTarget;
839 data.m_FloatLast = data.m_FloatCurrent;
840 data.m_FloatStart = data.m_FloatCurrent;
841 if (!data.IsSettingDefaultValues())
842 {
843 data.SetSettingDefaultValues(true);
844
846 }
847 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloatDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
848 }
849
850 protected void SetTargetValueColor(int mat_id, int param_idx, array<float> val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
851 {
853 return;
854
855 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
856 data.SetPriorityLayer(priority_layer);
857 data.SetInteractionMask(operator);
858 data.m_ColorFormerTarget = data.m_ColorTarget;
859
860 data.m_ColorTarget.Copy(val);
861
862 data.m_ColorLast = data.m_ColorCurrent;
863 data.m_ColorStart = data.m_ColorCurrent;
864 //if (data.m_ColorTarget != data.m_ColorCurrent)
865 {
866 data.SetSettingDefaultValues(false);
867 data.SetDataActive(true);
868
870 }
871 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColor | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
872 }
873
874 protected void SetTargetValueColorDefault(int mat_id, int param_idx)
875 {
876 //TODO - running check and cleanup rework (elsewhere!)
877 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
878 return;
879
880 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
881 data.m_ColorFormerTarget = data.m_ColorTarget;
882 data.m_ColorLast = data.m_ColorCurrent;
883 data.m_ColorStart = data.m_ColorCurrent;
884 if (!data.IsSettingDefaultValues())
885 {
886 data.SetSettingDefaultValues(true);
887
889 }
890 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColorDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
891 }
892
893 /*protected void SetTargetValueVector(int mat_id, int param_idx, bool relative, vector val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
894 {
895 }
896
897 void SetTargetValueTexture(int mat_id, int param_idx, string val, int priority_layer, int mask, bool override_priority = false)
898 {
899 }*/
900
901 /*void SetTargetValueResource(int mat_id, int param_idx, string val, int priority_layer, int mask, bool override_priority = false)
902 {
903 }*/
904
906 protected void QueueValuesSend()
907 {
908 m_ValuesSent = false;
909 //m_IsRunning = true;
911 }
912
914 PPERequestParamDataBase GetRequestData(int mat_id, int param_idx, int type)
915 {
917 if ( m_RequestDataStructure.Get(mat_id) )
918 {
919 if (m_RequestDataStructure.Get(mat_id).Get(param_idx))
920 {
921 data = m_RequestDataStructure.Get(mat_id).Get(param_idx);
922 }
923 else
924 {
925 data = PrepareData(mat_id,param_idx,type);
926 m_RequestDataStructure.Get(mat_id).Set(param_idx,data);
927 }
928 }
929 else
930 {
931 data = PrepareData(mat_id,param_idx,type);
933 temp_map.Set(param_idx,data);
934 m_RequestDataStructure.Set(mat_id, temp_map);
935 }
936
937 if (!data)
938 {
939 Error("GetRequestData | no data found in the structure");
940 }
941
942 data.m_Requester = this;
943
944 return data;
945 }
946
947 protected PPERequestParamDataBase PrepareData(int mat_id, int param_idx, int type)
948 {
950 switch (type)
951 {
952 case PPEConstants.VAR_TYPE_BOOL:
953 data = new PPERequestParamDataBool(m_IDX, mat_id, param_idx);
954 break;
955
956 case PPEConstants.VAR_TYPE_INT:
957 data = new PPERequestParamDataInt(m_IDX, mat_id, param_idx);
958 break;
959
960 case PPEConstants.VAR_TYPE_FLOAT:
961 data = new PPERequestParamDataFloat(m_IDX, mat_id, param_idx);
962 break;
963
964 case PPEConstants.VAR_TYPE_COLOR:
965 data = new PPERequestParamDataColor(m_IDX, mat_id, param_idx);
966 break;
967 }
968 return data;
969 }
970
971 // unused?
973 {
975 }
976
977 protected void ClearRequesterData()
978 {
980 }
981
983 {
984 PPEManagerStatic.GetPPEManager().SendMaterialValueData(data);
985 }
986
987 //EVENTS//
988 //vvvvvv//
989 void OnUpdate(float delta)
990 {
991 //DbgPrnt("PPEDebug | PPERequesterBase | OnUpdate");
992
993 if ( !m_ValuesSent )
994 {
995 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
996 {
997 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
998 {
999 SendCurrentValueData(m_RequestDataStructure.GetElement(i).GetElement(j)); //map<int,ref map<int,PPERequestParamDataBase>> //<material<param,data>>
1000 }
1001 }
1002 m_ValuesSent = true;
1003 }
1004 SetRequesterUpdating(false);
1005 }
1006
1007 protected void OnStart(Param par = null)
1008 {
1010 }
1011
1013 protected void OnStop(Param par = null)
1014 {
1015 //DbgPrnt("PPEDebug | " + this + " | OnStop");
1018 }
1019
1021 protected float RelativizeValue(float value, int var_type, int mat_id, int param_id, bool relative)
1022 {
1023 float ret = value;
1024 if (!relative) //if not already relative...
1025 {
1026 switch (var_type)
1027 {
1028 case PPEConstants.VAR_TYPE_FLOAT:
1029 PPETemplateDefFloat p_float = PPETemplateDefFloat.Cast(PPEManagerStatic.GetPPEManager().GetPostProcessDefaultValues(mat_id,param_id));
1030 ret = Math.InverseLerp(p_float.param3, p_float.param4, ret);
1031 ret = Math.Clamp(ret,0.0,1.0);
1032 break;
1033 }
1034 }
1035 //Print("RelativizeValue: " + ret);
1036
1037 return ret;
1038 }
1039
1041 protected void SetDefaultValuesAll()
1042 {
1043 //<material<param_id,data>>
1044 PPERequestParamDataBase req_data;
1045
1046 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
1047 {
1048 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
1049 {
1050 req_data = m_RequestDataStructure.GetElement(i).GetElement(j);
1051
1052 if (!req_data.IsDataActive())
1053 continue;
1054
1055 switch (req_data.GetVarType())
1056 {
1057 case PPEConstants.VAR_TYPE_BOOL:
1059 break;
1060
1061 case PPEConstants.VAR_TYPE_INT:
1063 break;
1064
1065 case PPEConstants.VAR_TYPE_FLOAT:
1067 break;
1068
1069 case PPEConstants.VAR_TYPE_COLOR:
1071 break;
1072 }
1073 }
1074 }
1075 }
1076
1077 void DbgPrnt(string text)
1078 {
1079 //Debug.Log(""+text);
1080 }
1081}
1082
1084// Base requester platforms //
1086
1088{
1089 override int GetCategoryMask()
1090 {
1091 return PPERequesterCategory.GAMEPLAY_EFFECTS;
1092 }
1093}
1094
1096{
1097 override int GetCategoryMask()
1098 {
1099 return PPERequesterCategory.MENU_EFFECTS;
1100 }
1101}
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