783 {
784 if( w == null )
785 {
786 return;
787 }
788
790 bool is_reserved = false;
791
792 SlotsIcon slots_icon;
793 receiver.GetUserData(slots_icon);
794
795 if(slots_icon)
796 {
799 }
800
802
803 if( !ipw || !ipw.IsInherited( ItemPreviewWidget ) )
804 {
805 return;
806 }
807
809 if( !item )
810 {
811 return;
812 }
813
814 if( receiver_item && !is_reserved )
815 {
816 if( GameInventory.CanSwapEntitiesEx( receiver_item, item ) )
817 {
818 ColorManager.GetInstance().SetColor( w, ColorManager.SWAP_COLOR );
819 ItemManager.GetInstance().HideDropzones();
820 ItemManager.GetInstance().GetRightDropzone().SetAlpha( 1 );
821 return;
822 }
823 else if( receiver_item.GetInventory().CanAddAttachment(item) || receiver_item.GetInventory().CanAddEntityInCargo( item, item.GetInventory().GetFlipCargo() ) && !receiver_item.GetInventory().HasEntityInCargo( item ))
824 {
825 ColorManager.GetInstance().SetColor( w, ColorManager.GREEN_COLOR );
826 ItemManager.GetInstance().HideDropzones();
827 ItemManager.GetInstance().GetRightDropzone().SetAlpha( 1 );
828 return;
829 }
830 else if( (
ItemBase.Cast( receiver_item ) ).CanBeCombined(
ItemBase.Cast( item ) ) )
831 {
832 ColorManager.GetInstance().SetColor( w, ColorManager.COMBINE_COLOR );
833 ItemManager.GetInstance().HideDropzones();
834 ItemManager.GetInstance().GetRightDropzone().SetAlpha( 1 );
835 return;
836 }
837
838 }
839
840 if( item.GetInventory().CanRemoveEntity() )
841 {
842 if(
m_Player.GetInventory().CanAddAttachment( item) )
843 {
844 ColorManager.GetInstance().SetColor( w, ColorManager.GREEN_COLOR );
845 ItemManager.GetInstance().HideDropzones();
846 ItemManager.GetInstance().GetRightDropzone().SetAlpha( 1 );
847 }
849 {
850 ColorManager.GetInstance().SetColor( w, ColorManager.GREEN_COLOR );
851 ItemManager.GetInstance().HideDropzones();
852 ItemManager.GetInstance().GetRightDropzone().SetAlpha( 1 );
853 }
854 else if ( receiver_item && GameInventory.CanSwapEntitiesEx( receiver_item, item ) )
855 {
856 ColorManager.GetInstance().SetColor( w, ColorManager.SWAP_COLOR );
857 ItemManager.GetInstance().HideDropzones();
858 ItemManager.GetInstance().GetRightDropzone().SetAlpha( 1 );
859 }
860 else
861 {
862 ColorManager.GetInstance().SetColor( w, ColorManager.RED_COLOR );
863 ItemManager.GetInstance().HideDropzones();
864 ItemManager.GetInstance().GetRightDropzone().SetAlpha( 1 );
865 }
866 }
867 else
868 {
869 ColorManager.GetInstance().SetColor( w, ColorManager.RED_COLOR );
870 ItemManager.GetInstance().HideDropzones();
871 ItemManager.GetInstance().GetRightDropzone().SetAlpha( 1 );
872
873 }
874 }
class GP5GasMask extends MaskBase ItemBase
FindInventoryLocationType
flags for searching locations in inventory
ItemPreviewWidget GetItemPreviewWidget(Widget w)