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

◆ SetTargetValueIntDefault()

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

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

573{
574 protected bool m_IsRunning; //helps determine if the requester has been stopped or not
575 protected bool m_ValuesSent;
576 protected int m_IDX;
577
578 protected bool m_Valid = false;
579
580 protected ref map<int,ref map<int,ref PPERequestParamDataBase>> m_RequestDataStructure; // <material<param_id,data>> // parameter data objects are singletons
581
582 void PPERequesterBase(int requester_IDX)
583 {
584 m_Valid = PPERequesterBank.VerifyRequester(this);
585
586 m_IDX = requester_IDX;
587 m_ValuesSent = true;
588 m_IsRunning = false;
590 }
591
593 void SetRequesterUpdating(bool state)
594 {
595 if (!m_Valid)
596 {
597 Debug.Log("" + this + " not valid!");
598 return;
599 }
600
601 PPEManagerStatic.GetPPEManager().SetRequestUpdating(this,state);
602
603 //TODO - separate into its own function?
604 if (state)
605 PPEManagerStatic.GetPPEManager().SetRequestActive(this,true);
606 }
607
608 void Start(Param par = null)
609 {
610 OnStart(par);
611 m_IsRunning = true;
612 }
613
614 void Stop(Param par = null)
615 {
617 return;
618
619 OnStop(par);
620 m_IsRunning = false;
621 }
622
623 bool IsRequesterRunning()
624 {
625 return m_IsRunning;
626 }
627
629 void SetRequesterIDX(int idx)
630 {
631 m_IDX = idx;
632 }
633
635 int GetRequesterIDX()
636 {
637 return m_IDX;
638 }
639
641 int GetCategoryMask()
642 {
643 return PPERequesterCategory.NONE;
644 }
645
646 //SETTERS//
647 //vvvvvvv//
648 protected void SetTargetValueBool(int mat_id, int param_idx, bool val, int priority_layer, int operator = PPOperators.SET)
649 {
651 return;
652
653 PPERequestParamDataBool data = PPERequestParamDataBool.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_BOOL));
654 data.SetPriorityLayer(priority_layer);
655 data.SetInteractionMask(operator);
656
657 data.m_BoolTarget = val;
658 data.m_BoolLast = data.m_BoolCurrent;
659
660 if (data.m_BoolTarget != data.m_BoolCurrent || data.IsSettingDefaultValues())
661 {
662 data.SetSettingDefaultValues(false);
663 data.SetDataActive(true);
664
666 }
667 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBool | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
668 }
669
670 protected void SetTargetValueBoolDefault(int mat_id, int param_idx)
671 {
672 //TODO - running check and cleanup rework (elsewhere!)
673 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
674 return;
675
676 PPERequestParamDataBool data = PPERequestParamDataBool.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_BOOL));
677 data.m_BoolLast = data.m_BoolCurrent;
678 if (!data.IsSettingDefaultValues())
679 {
680 data.SetSettingDefaultValues(true);
681
683 }
684 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBoolDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
685 }
686
687 protected void SetTargetValueInt(int mat_id, int param_idx, bool relative, int val, int priority_layer, int operator = PPOperators.SET)
688 {
690 return;
691
692 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
693 data.SetPriorityLayer(priority_layer);
694 data.SetInteractionMask(operator);
695
696 data.m_IntTarget = val;
697 data.m_IntLast = data.m_IntCurrent;
698 if (data.m_IntTarget != data.m_IntCurrent || data.IsSettingDefaultValues())
699 {
700 data.SetSettingDefaultValues(false);
701 data.SetDataActive(true);
702
704 }
705 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueInt | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
706 }
707
708 protected void SetTargetValueIntDefault(int mat_id, int param_idx)
709 {
710 //TODO - running check and cleanup rework (elsewhere!)
711 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
712 return;
713
714 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
715 data.m_IntLast = data.m_IntCurrent;
716 if (!data.IsSettingDefaultValues())
717 {
718 data.SetSettingDefaultValues(true);
719
721 }
722 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueIntDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
723 }
724
725 protected void SetTargetValueFloat(int mat_id, int param_idx, bool relative, float val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
726 {
728 return;
729
730 PPERequestParamDataFloat data = PPERequestParamDataFloat.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_FLOAT));
731 data.SetPriorityLayer(priority_layer);
732 data.SetInteractionMask(operator);
733
734 data.m_FloatFormerTarget = data.m_FloatTarget;
735 data.m_FloatTarget = RelativizeValue(val,PPEConstants.VAR_TYPE_FLOAT,mat_id,param_idx,relative);
736 data.m_FloatLast = data.m_FloatCurrent;
737 data.m_FloatStart = data.m_FloatCurrent;
738 if (data.m_FloatTarget != data.m_FloatCurrent || data.IsSettingDefaultValues())
739 {
740 data.SetSettingDefaultValues(false);
741 data.SetDataActive(true);
742
744 }
745 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloat | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
746 }
747
748 protected void SetTargetValueFloatDefault(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 PPERequestParamDataFloat data = PPERequestParamDataFloat.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_FLOAT));
755 data.m_FloatFormerTarget = data.m_FloatTarget;
756 data.m_FloatLast = data.m_FloatCurrent;
757 data.m_FloatStart = data.m_FloatCurrent;
758 if (!data.IsSettingDefaultValues())
759 {
760 data.SetSettingDefaultValues(true);
761
763 }
764 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloatDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
765 }
766
767 protected void SetTargetValueColor(int mat_id, int param_idx, array<float> val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
768 {
770 return;
771
772 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
773 data.SetPriorityLayer(priority_layer);
774 data.SetInteractionMask(operator);
775 data.m_ColorFormerTarget = data.m_ColorTarget;
776
777 data.m_ColorTarget.Copy(val);
778
779 data.m_ColorLast = data.m_ColorCurrent;
780 data.m_ColorStart = data.m_ColorCurrent;
781 //if (data.m_ColorTarget != data.m_ColorCurrent)
782 {
783 data.SetSettingDefaultValues(false);
784 data.SetDataActive(true);
785
787 }
788 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColor | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
789 }
790
791 protected void SetTargetValueColorDefault(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 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
798 data.m_ColorFormerTarget = data.m_ColorTarget;
799 data.m_ColorLast = data.m_ColorCurrent;
800 data.m_ColorStart = data.m_ColorCurrent;
801 if (!data.IsSettingDefaultValues())
802 {
803 data.SetSettingDefaultValues(true);
804
806 }
807 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColorDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
808 }
809
810 /*protected void SetTargetValueVector(int mat_id, int param_idx, bool relative, vector val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
811 {
812 }
813
814 void SetTargetValueTexture(int mat_id, int param_idx, string val, int priority_layer, int mask, bool override_priority = false)
815 {
816 }*/
817
818 /*void SetTargetValueResource(int mat_id, int param_idx, string val, int priority_layer, int mask, bool override_priority = false)
819 {
820 }*/
821
823 protected void QueueValuesSend()
824 {
825 m_ValuesSent = false;
826 //m_IsRunning = true;
828 }
829
831 PPERequestParamDataBase GetRequestData(int mat_id, int param_idx, int type)
832 {
834 if ( m_RequestDataStructure.Get(mat_id) )
835 {
836 if (m_RequestDataStructure.Get(mat_id).Get(param_idx))
837 {
838 data = m_RequestDataStructure.Get(mat_id).Get(param_idx);
839 }
840 else
841 {
842 data = PrepareData(mat_id,param_idx,type);
843 m_RequestDataStructure.Get(mat_id).Set(param_idx,data);
844 }
845 }
846 else
847 {
848 data = PrepareData(mat_id,param_idx,type);
850 temp_map.Set(param_idx,data);
851 m_RequestDataStructure.Set(mat_id, temp_map);
852 }
853
854 if (!data)
855 {
856 Error("GetRequestData | no data found in the structure");
857 }
858
859 data.m_Requester = this;
860
861 return data;
862 }
863
864 protected PPERequestParamDataBase PrepareData(int mat_id, int param_idx, int type)
865 {
867 switch (type)
868 {
869 case PPEConstants.VAR_TYPE_BOOL:
870 data = new PPERequestParamDataBool(m_IDX, mat_id, param_idx);
871 break;
872
873 case PPEConstants.VAR_TYPE_INT:
874 data = new PPERequestParamDataInt(m_IDX, mat_id, param_idx);
875 break;
876
877 case PPEConstants.VAR_TYPE_FLOAT:
878 data = new PPERequestParamDataFloat(m_IDX, mat_id, param_idx);
879 break;
880
881 case PPEConstants.VAR_TYPE_COLOR:
882 data = new PPERequestParamDataColor(m_IDX, mat_id, param_idx);
883 break;
884 }
885 return data;
886 }
887
888 // unused?
890 {
892 }
893
894 protected void ClearRequesterData()
895 {
897 }
898
900 {
901 PPEManagerStatic.GetPPEManager().SendMaterialValueData(data);
902 }
903
904 //EVENTS//
905 //vvvvvv//
906 void OnUpdate(float delta)
907 {
908 //DbgPrnt("PPEDebug | PPERequesterBase | OnUpdate");
909
910 if ( !m_ValuesSent )
911 {
912 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
913 {
914 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
915 {
916 SendCurrentValueData(m_RequestDataStructure.GetElement(i).GetElement(j)); //map<int,ref map<int,PPERequestParamDataBase>> //<material<param,data>>
917 }
918 }
919 m_ValuesSent = true;
920 }
922 }
923
924 protected void OnStart(Param par = null)
925 {
927 }
928
930 protected void OnStop(Param par = null)
931 {
932 //DbgPrnt("PPEDebug | " + this + " | OnStop");
935 }
936
938 protected float RelativizeValue(float value, int var_type, int mat_id, int param_id, bool relative)
939 {
940 float ret = value;
941 if (!relative) //if not already relative...
942 {
943 switch (var_type)
944 {
945 case PPEConstants.VAR_TYPE_FLOAT:
946 PPETemplateDefFloat p_float = PPETemplateDefFloat.Cast(PPEManagerStatic.GetPPEManager().GetPostProcessDefaultValues(mat_id,param_id));
947 ret = Math.InverseLerp(p_float.param3, p_float.param4, ret);
948 ret = Math.Clamp(ret,0.0,1.0);
949 break;
950 }
951 }
952 //Print("RelativizeValue: " + ret);
953
954 return ret;
955 }
956
958 protected void SetDefaultValuesAll()
959 {
960 //<material<param_id,data>>
962
963 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
964 {
965 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
966 {
967 req_data = m_RequestDataStructure.GetElement(i).GetElement(j);
968
969 if (!req_data.IsDataActive())
970 continue;
971
972 switch (req_data.GetVarType())
973 {
974 case PPEConstants.VAR_TYPE_BOOL:
976 break;
977
978 case PPEConstants.VAR_TYPE_INT:
980 break;
981
982 case PPEConstants.VAR_TYPE_FLOAT:
984 break;
985
986 case PPEConstants.VAR_TYPE_COLOR:
988 break;
989 }
990 }
991 }
992 }
993
994 void DbgPrnt(string text)
995 {
996 //Debug.Log(""+text);
997 }
998}
999
1001// Base requester platforms //
1003
1005{
1006 override int GetCategoryMask()
1007 {
1008 return PPERequesterCategory.GAMEPLAY_EFFECTS;
1009 }
1010}
1011
1013{
1014 override int GetCategoryMask()
1015 {
1016 return PPERequesterCategory.MENU_EFFECTS;
1017 }
1018}
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