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

◆ SetTargetValueBool()

void GetCategoryMask::SetTargetValueBool ( int mat_id,
int param_idx,
bool val,
int priority_layer,
int operator = PPOperators.SET )
protected

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

513{
514 protected bool m_IsRunning; //helps determine if the requester has been stopped or not
515 protected bool m_ValuesSent;
516 protected int m_IDX;
517
518 protected bool m_Valid = false;
519
520 protected ref map<int,ref map<int,ref PPERequestParamDataBase>> m_RequestDataStructure; // <material<param_id,data>> // parameter data objects are singletons
521
522 void PPERequesterBase(int requester_IDX)
523 {
524 m_Valid = PPERequesterBank.VerifyRequester(this);
525
526 m_IDX = requester_IDX;
527 m_ValuesSent = true;
528 m_IsRunning = false;
530 }
531
533 void SetRequesterUpdating(bool state)
534 {
535 if (!m_Valid)
536 {
537 Debug.Log("" + this + " not valid!");
538 return;
539 }
540
541 PPEManagerStatic.GetPPEManager().SetRequestUpdating(this,state);
542
543 //TODO - separate into its own function?
544 if (state)
545 PPEManagerStatic.GetPPEManager().SetRequestActive(this,true);
546 }
547
548 void Start(Param par = null)
549 {
550 OnStart(par);
551 m_IsRunning = true;
552 }
553
554 void Stop(Param par = null)
555 {
557 return;
558
559 OnStop(par);
560 m_IsRunning = false;
561 }
562
563 bool IsRequesterRunning()
564 {
565 return m_IsRunning;
566 }
567
569 void SetRequesterIDX(int idx)
570 {
571 m_IDX = idx;
572 }
573
575 int GetRequesterIDX()
576 {
577 return m_IDX;
578 }
579
581 int GetCategoryMask()
582 {
583 return PPERequesterCategory.NONE;
584 }
585
586 //SETTERS//
587 //vvvvvvv//
588 protected void SetTargetValueBool(int mat_id, int param_idx, bool val, int priority_layer, int operator = PPOperators.SET)
589 {
591 return;
592
593 PPERequestParamDataBool data = PPERequestParamDataBool.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_BOOL));
594 data.SetPriorityLayer(priority_layer);
595 data.SetInteractionMask(operator);
596
597 data.m_BoolTarget = val;
598 data.m_BoolLast = data.m_BoolCurrent;
599
600 if (data.m_BoolTarget != data.m_BoolCurrent || data.IsSettingDefaultValues())
601 {
602 data.SetSettingDefaultValues(false);
603 data.SetDataActive(true);
604
606 }
607 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBool | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
608 }
609
610 protected void SetTargetValueBoolDefault(int mat_id, int param_idx)
611 {
612 //TODO - running check and cleanup rework (elsewhere!)
613 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
614 return;
615
616 PPERequestParamDataBool data = PPERequestParamDataBool.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_BOOL));
617 data.m_BoolLast = data.m_BoolCurrent;
618 if (!data.IsSettingDefaultValues())
619 {
620 data.SetSettingDefaultValues(true);
621
623 }
624 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueBoolDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
625 }
626
627 protected void SetTargetValueInt(int mat_id, int param_idx, bool relative, int val, int priority_layer, int operator = PPOperators.SET)
628 {
630 return;
631
632 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
633 data.SetPriorityLayer(priority_layer);
634 data.SetInteractionMask(operator);
635
636 data.m_IntTarget = val;
637 data.m_IntLast = data.m_IntCurrent;
638 if (data.m_IntTarget != data.m_IntCurrent || data.IsSettingDefaultValues())
639 {
640 data.SetSettingDefaultValues(false);
641 data.SetDataActive(true);
642
644 }
645 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueInt | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
646 }
647
648 protected void SetTargetValueIntDefault(int mat_id, int param_idx)
649 {
650 //TODO - running check and cleanup rework (elsewhere!)
651 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
652 return;
653
654 PPERequestParamDataInt data = PPERequestParamDataInt.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_INT));
655 data.m_IntLast = data.m_IntCurrent;
656 if (!data.IsSettingDefaultValues())
657 {
658 data.SetSettingDefaultValues(true);
659
661 }
662 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueIntDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
663 }
664
665 protected void SetTargetValueFloat(int mat_id, int param_idx, bool relative, float val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
666 {
668 return;
669
670 PPERequestParamDataFloat data = PPERequestParamDataFloat.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_FLOAT));
671 data.SetPriorityLayer(priority_layer);
672 data.SetInteractionMask(operator);
673
674 data.m_FloatFormerTarget = data.m_FloatTarget;
675 data.m_FloatTarget = RelativizeValue(val,PPEConstants.VAR_TYPE_FLOAT,mat_id,param_idx,relative);
676 data.m_FloatLast = data.m_FloatCurrent;
677 data.m_FloatStart = data.m_FloatCurrent;
678 if (data.m_FloatTarget != data.m_FloatCurrent || data.IsSettingDefaultValues())
679 {
680 data.SetSettingDefaultValues(false);
681 data.SetDataActive(true);
682
684 }
685 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloat | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
686 }
687
688 protected void SetTargetValueFloatDefault(int mat_id, int param_idx)
689 {
690 //TODO - running check and cleanup rework (elsewhere!)
691 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
692 return;
693
694 PPERequestParamDataFloat data = PPERequestParamDataFloat.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_FLOAT));
695 data.m_FloatFormerTarget = data.m_FloatTarget;
696 data.m_FloatLast = data.m_FloatCurrent;
697 data.m_FloatStart = data.m_FloatCurrent;
698 if (!data.IsSettingDefaultValues())
699 {
700 data.SetSettingDefaultValues(true);
701
703 }
704 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueFloatDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
705 }
706
707 protected void SetTargetValueColor(int mat_id, int param_idx, array<float> val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
708 {
710 return;
711
712 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
713 data.SetPriorityLayer(priority_layer);
714 data.SetInteractionMask(operator);
715 data.m_ColorFormerTarget = data.m_ColorTarget;
716
717 data.m_ColorTarget.Copy(val);
718
719 data.m_ColorLast = data.m_ColorCurrent;
720 data.m_ColorStart = data.m_ColorCurrent;
721 //if (data.m_ColorTarget != data.m_ColorCurrent)
722 {
723 data.SetSettingDefaultValues(false);
724 data.SetDataActive(true);
725
727 }
728 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColor | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
729 }
730
731 protected void SetTargetValueColorDefault(int mat_id, int param_idx)
732 {
733 //TODO - running check and cleanup rework (elsewhere!)
734 if ( !m_RequestDataStructure || !m_RequestDataStructure.Get(mat_id) || !m_RequestDataStructure.Get(mat_id).Get(param_idx))
735 return;
736
737 PPERequestParamDataColor data = PPERequestParamDataColor.Cast(GetRequestData(mat_id,param_idx,PPEConstants.VAR_TYPE_COLOR));
738 data.m_ColorFormerTarget = data.m_ColorTarget;
739 data.m_ColorLast = data.m_ColorCurrent;
740 data.m_ColorStart = data.m_ColorCurrent;
741 if (!data.IsSettingDefaultValues())
742 {
743 data.SetSettingDefaultValues(true);
744
746 }
747 //DbgPrnt("PPEDebug | PPERequesterBase - SetTargetValueColorDefault | mat/par/req: " + mat_id + "/" + param_idx + "/" + m_IDX + " | data: " + data);
748 }
749
750 /*protected void SetTargetValueVector(int mat_id, int param_idx, bool relative, vector val, int priority_layer, int operator = PPOperators.ADD_RELATIVE)
751 {
752 }
753
754 void SetTargetValueTexture(int mat_id, int param_idx, string val, int priority_layer, int mask, bool override_priority = false)
755 {
756 }*/
757
758 /*void SetTargetValueResource(int mat_id, int param_idx, string val, int priority_layer, int mask, bool override_priority = false)
759 {
760 }*/
761
763 protected void QueueValuesSend()
764 {
765 m_ValuesSent = false;
766 //m_IsRunning = true;
768 }
769
771 PPERequestParamDataBase GetRequestData(int mat_id, int param_idx, int type)
772 {
774 if ( m_RequestDataStructure.Get(mat_id) )
775 {
776 if (m_RequestDataStructure.Get(mat_id).Get(param_idx))
777 {
778 data = m_RequestDataStructure.Get(mat_id).Get(param_idx);
779 }
780 else
781 {
782 data = PrepareData(mat_id,param_idx,type);
783 m_RequestDataStructure.Get(mat_id).Set(param_idx,data);
784 }
785 }
786 else
787 {
788 data = PrepareData(mat_id,param_idx,type);
790 temp_map.Set(param_idx,data);
791 m_RequestDataStructure.Set(mat_id, temp_map);
792 }
793
794 if (!data)
795 {
796 Error("GetRequestData | no data found in the structure");
797 }
798
799 data.m_Requester = this;
800
801 return data;
802 }
803
804 protected PPERequestParamDataBase PrepareData(int mat_id, int param_idx, int type)
805 {
807 switch (type)
808 {
809 case PPEConstants.VAR_TYPE_BOOL:
810 data = new PPERequestParamDataBool(m_IDX, mat_id, param_idx);
811 break;
812
813 case PPEConstants.VAR_TYPE_INT:
814 data = new PPERequestParamDataInt(m_IDX, mat_id, param_idx);
815 break;
816
817 case PPEConstants.VAR_TYPE_FLOAT:
818 data = new PPERequestParamDataFloat(m_IDX, mat_id, param_idx);
819 break;
820
821 case PPEConstants.VAR_TYPE_COLOR:
822 data = new PPERequestParamDataColor(m_IDX, mat_id, param_idx);
823 break;
824 }
825 return data;
826 }
827
828 // unused?
830 {
832 }
833
834 protected void ClearRequesterData()
835 {
837 }
838
840 {
841 PPEManagerStatic.GetPPEManager().SendMaterialValueData(data);
842 }
843
844 //EVENTS//
845 //vvvvvv//
846 void OnUpdate(float delta)
847 {
848 //DbgPrnt("PPEDebug | PPERequesterBase | OnUpdate");
849
850 if ( !m_ValuesSent )
851 {
852 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
853 {
854 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
855 {
856 SendCurrentValueData(m_RequestDataStructure.GetElement(i).GetElement(j)); //map<int,ref map<int,PPERequestParamDataBase>> //<material<param,data>>
857 }
858 }
859 m_ValuesSent = true;
860 }
862 }
863
864 protected void OnStart(Param par = null)
865 {
867 }
868
870 protected void OnStop(Param par = null)
871 {
872 //DbgPrnt("PPEDebug | " + this + " | OnStop");
875 }
876
878 protected float RelativizeValue(float value, int var_type, int mat_id, int param_id, bool relative)
879 {
880 float ret = value;
881 if (!relative) //if not already relative...
882 {
883 switch (var_type)
884 {
885 case PPEConstants.VAR_TYPE_FLOAT:
886 PPETemplateDefFloat p_float = PPETemplateDefFloat.Cast(PPEManagerStatic.GetPPEManager().GetPostProcessDefaultValues(mat_id,param_id));
887 ret = Math.InverseLerp(p_float.param3, p_float.param4, ret);
888 ret = Math.Clamp(ret,0.0,1.0);
889 break;
890 }
891 }
892 //Print("RelativizeValue: " + ret);
893
894 return ret;
895 }
896
898 protected void SetDefaultValuesAll()
899 {
900 //<material<param_id,data>>
902
903 for (int i = 0; i < m_RequestDataStructure.Count(); i++)
904 {
905 for (int j = 0; j < m_RequestDataStructure.GetElement(i).Count(); j++)
906 {
907 req_data = m_RequestDataStructure.GetElement(i).GetElement(j);
908
909 if (!req_data.IsDataActive())
910 continue;
911
912 switch (req_data.GetVarType())
913 {
914 case PPEConstants.VAR_TYPE_BOOL:
916 break;
917
918 case PPEConstants.VAR_TYPE_INT:
920 break;
921
922 case PPEConstants.VAR_TYPE_FLOAT:
924 break;
925
926 case PPEConstants.VAR_TYPE_COLOR:
928 break;
929 }
930 }
931 }
932 }
933
934 void DbgPrnt(string text)
935 {
936 //Debug.Log(""+text);
937 }
938}
939
941// Base requester platforms //
943
945{
946 override int GetCategoryMask()
947 {
948 return PPERequesterCategory.GAMEPLAY_EFFECTS;
949 }
950}
951
953{
954 override int GetCategoryMask()
955 {
956 return PPERequesterCategory.MENU_EFFECTS;
957 }
958}
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::SetValuesIronsights().