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

◆ GetRequesterIDX()

int GetCategoryMask::GetRequesterIDX ( )
protected

Returns requester index.

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

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