1. ActionScript / Говнокод #16161

    +143

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    public static var ssa:uint = 161;
    ...
    Globals.ssa = (Globals.ssa + ++VSIZE);
    sd = new ByteArray();
    ba.readBytes(sd);
    ba.position = 0;
    ba.length = 0;
    do
    {
    	Globals.ssa = sCompress;
    	Globals.ssa = ((Globals.ssa * V[0]) & 4194303);
    	...

    из того же источника

    makc3d, 13 Июня 2014

    Комментарии (2)
  2. ActionScript / Говнокод #16159

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    x = 1;
    					x = (x >> 11);
    					x = (x + 1);
    					x = (x >> 9);
    					x = (x + 1);
    					x = (x >> 7);
    					x = (x + 1);
    					x = (x >> 5);
    					x = (x + 1);
    					x = (x >> 3);
    					x = (x + 1);
    					x = (x >> 10);
    					x = (x + 1);
    					x = (x >> 8);
    					x = (x + 1);
    					x = (x >> 6);
    					x = (x + 1);
    					x = (x >> 4);
    					x = (x + 1);
    					x = (x >> 2);
    					x = (x + 1);
    					if (x == 1)
    					{
    						ge.ha = true;
    					};

    из недр не менее изощрённого распковщика обфусцированного xml

    makc3d, 13 Июня 2014

    Комментарии (5)
  3. ActionScript / Говнокод #16146

    +140

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    case EffectVO.ENTER_FROM_LEFT: 
    	xFrom = - (sprite.boundingRect.width + Math.abs(sprite.boundingRect.x));
    	xFrom *= extraSafetyScaleFactor;
    	objectTween = TweenLite.from(spriteView, 0.5,
            {
                x: String(xFrom),
                immediateRender: true,
                ease: Cubic.easeOut
            });

    Культовый код. Вот, недавно набрел на ссылку:
    http://en.wikipedia.org/wiki/Cargo_cult_programming
    Почему-то во всем проекте анимированые свойства либо конвертируются в строки, либо изначально задаются строками. Писец давно уволился, и выяснить первопричину сейчас не представляется возможным, но существует предположение, что таким образом писец боролся с NaN... вряд ли это конечно могло помочь, но на то он и культ.

    wvxvw, 11 Июня 2014

    Комментарии (1)
  4. ActionScript / Говнокод #15996

    +131

    1. 1
    var isBuyAction:Boolean = (btnLabelid == "buy_orangeBtn" || btnLabelid == "upgrade_orangeBtn") ? true : false;

    Надежность наше все!

    crazy_horse, 16 Мая 2014

    Комментарии (2)
  5. ActionScript / Говнокод #15948

    +130

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    if ((posX / 2) != Math.round(posX / 2)) {
    	if (fieldsArray[posX-1])
    	if(fieldsArray[posX-1][posY])
    	if ((fieldsArray[posX-1][posY]['data']['status'] == 0) && (fieldsArray[posX-1][posY]['data']['type'] == 0))
    	if (fieldsArray[posX-2])
    	if (fieldsArray[posX-2][posY])
    	if ((fieldsArray[posX-2][posY]['data']['status']== 0) && (fieldsArray[posX-2][posY]['data']['type'] == 0))
    	if (fieldsArray[posX-1])
    	if (fieldsArray[posX-1][posY+1])
    	if ((fieldsArray[posX-1][posY+1]['data']['status'] == 0) && (fieldsArray[posX-1][posY+1]['data']['type'] == 0))
    	return true;
    	return false;
    } else {
    	if (fieldsArray[posX-1])
    	if(fieldsArray[posX-1][posY-1])
    	if ((fieldsArray[posX-1][posY-1]['data']['status'] == 0) && (fieldsArray[posX-1][posY-1]['data']['type'] == 0))
    	if (fieldsArray[posX-2])
    	if (fieldsArray[posX-2][posY])
    	if ((fieldsArray[posX-2][posY]['data']['status'] == 0) && (fieldsArray[posX-2][posY]['data']['type'] == 0))
    	if (fieldsArray[posX-1])
    	if (fieldsArray[posX-1][posY])
    	if ((fieldsArray[posX-1][posY]['data']['status'] == 0) && (fieldsArray[posX-1][posY]['data']['type'] == 0))
    	return true;
    	return false;
    }

    Очередная фермоигра.
    Попросили помочь понять, что не так с объектами отличного от 1х1 размера.
    Форматирование сохранено.
    Обожаю...

    kostoprav, 09 Мая 2014

    Комментарии (42)
  6. ActionScript / Говнокод #15880

    +119

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    package socialnetworks
    {
    	/* package created 17.01.2013 */
    	import flash.display.Sprite;
    
    	import socialnetworks.*;
    	public class SocialNetworks extends Sprite
    	{
    		private var window:WindowSubstrate;
    		private var img_link:ImageLink;
    		public function SocialNetworks()
    		{
    			// constructor code
    			window=new WindowSubstrate();
    			window.CreateWorkSpace();
    			img_link = new ImageLink(window,"icon's/twitter-bird-light-bgs.png","https://twitter.com/kru_kikz",0,0);
    			img_link = new ImageLink(window,"icon's/vk2.png","http://vk.com/kru_kikz",135,0);
    			img_link = new ImageLink(window,"icon's/YouTube_logo_stacked_dark.png","http://vk.com/kru_kikz",270,0);
    
    			stage.addChild(window);
    		}
    	}
    }

    qstd, 01 Мая 2014

    Комментарии (5)
  7. ActionScript / Говнокод #15816

    +120

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    public static function createTransitionTween(transitionView:TransitionView):TweenCore
    {
    	var innerTimeline:TimelineMax = new TimelineMax();
    	var verySmallNumber:Number = 0.0001;
    	var swfTween:TweenMax;
    	var showTween:TweenMax;
    	var hideTween:TweenMax;
    	var duration:Number = 1; 
    	
    	if (transitionView.swf.content)
    	{
    		var totalFrames:Number = (transitionView.swf.content as MovieClip).totalFrames;
    		
    		if (transitionView.isStartTransition)
    			swfTween = TweenMax.fromTo(transitionView.swf.content , duration, {frame:26, alpha:1},{frame:50, alpha:1, ease:Linear.easeNone});
    		else
    			swfTween = TweenMax.fromTo(transitionView.swf.content , duration, {frame:1, alpha:1},{frame:25, alpha:1, ease:Linear.easeNone});
    		
    		showTween = TweenMax.fromTo(transitionView.swf.content, verySmallNumber, {alpha:0}, {alpha:1});
    		hideTween = TweenMax.fromTo(transitionView.swf.content, verySmallNumber, {alpha:1}, {alpha:0});
    
    		innerTimeline.append(showTween, -1 * verySmallNumber);
    		innerTimeline.append(swfTween);
    		innerTimeline.append(hideTween);
    	}	
    	return innerTimeline;
    }

    Они сраслись интеллектами.

    wvxvw, 22 Апреля 2014

    Комментарии (3)
  8. ActionScript / Говнокод #15709

    +111

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    public function addAndSelect(displayObject:*):void
    {
    	var newItem:TransformItem = addSpriteView(displayObject);
    	if (newItem)
    	{
    		setupTransformItem(newItem);	
    		transformer.selectItem(newItem);
    	}
    	if (newItem && newItem.targetObject && 
    		newItem.targetObject is EditableText && 
    		(newItem.targetObject as EditableText).data is TextSpriteVO &&
    		((newItem.targetObject as EditableText).data as TextSpriteVO).format &&
    		((newItem.targetObject as EditableText).data as TextSpriteVO).format.font == null )
    	{
    		//var mpm:MenuPanelMediator = facade.retrieveMediator(MenuPanelMediator.NAME) as MenuPanelMediator;
    		//mpm.setTextFormat((track.sprite as TextSpriteVO).format);
    		var fontFamilyString:String = ((newItem.targetObject as EditableText).data as TextSpriteVO).format.fontFamily;
    		((newItem.targetObject as EditableText).data as TextSpriteVO).format.fontFamily = "akbar";
    		((newItem.targetObject as EditableText).data as TextSpriteVO).format.fontFamily = fontFamilyString;
    	}
    }

    Очень ценный код, после удаления програма падает при загрузке.

    wvxvw, 09 Апреля 2014

    Комментарии (886)
  9. ActionScript / Говнокод #15702

    +106

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    private function setHandlesVisiablity(isTextBox:Boolean, isSpecialMode:Boolean = false):void
    {
    	if (isSpecialMode)
    	{
    		(_handles[0].handle as Sprite).visible = false; 				  //center
    		(_handles[1].handle as Sprite).visible = false;     		      //top
    		(_handles[2].handle as Sprite).visible = false;	  			 	  //right
    		(_handles[3].handle as Sprite).visible = false;		      	   	  //bottom
    		(_handles[4].handle as Sprite).visible = false; 			  	  //left
    		(_handles[5].handle as Sprite).visible = false;		      		  //topLeft
    		(_handles[6].handle as Sprite).visible = false;		    	      //topRight
    		(_handles[7].handle as Sprite).visible = false;		    	      //bottomRight
    		(_handles[8].handle as Sprite).visible = false;		   		      //bottomLeft
    	}
    	else
    	{
    		(_handles[0].handle as Sprite).visible = true; 					  //center
    		(_handles[1].handle as Sprite).visible = !isTextBox;		      //top
    		(_handles[2].handle as Sprite).visible = true;	  				  //right
    		(_handles[3].handle as Sprite).visible = !isTextBox;		      //bottom
    		(_handles[4].handle as Sprite).visible = true; 			  		  //left
    		(_handles[5].handle as Sprite).visible = !isTextBox;		      //topLeft
    		(_handles[6].handle as Sprite).visible = !isTextBox;		      //topRight
    		(_handles[7].handle as Sprite).visible = !isTextBox;		      //bottomRight
    		(_handles[8].handle as Sprite).visible = !isTextBox;		      //bottomLeft
    	}
    }

    Нужно отдельно объяснить, что выключка у коментариев не сложилась потому, что уже два разных программиста отрефакторили этот код. Изначально коментарии были каждый на своей строчке и равнялись разными людьми использующими разные настройки ИДЕ.

    wvxvw, 08 Апреля 2014

    Комментарии (17)
  10. ActionScript / Говнокод #15695

    +110

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    /**
     *  @private
     *  Calculates the height needed for heightInLines lines using the default
     *  font.
     */
    private function calculateHeightInLines():Number
    {
        var height:Number = getStyle("paddingTop") + getStyle("paddingBottom");
        
        if (_heightInLines == 0)
            return height;
        
        var effectiveHeightInLines:int;
        
        // If both height and width are NaN use 10 lines.  Otherwise if 
        // only height is NaN, use 1.
        if (isNaN(_heightInLines))
            effectiveHeightInLines = isNaN(_widthInChars) ? 10 : 1;   
        else
            effectiveHeightInLines = _heightInLines;
        
        // Position of the baseline of first line in the container.
        value = getStyle("firstBaselineOffset");
        if (value == lineHeight)
            height += lineHeight;
        else if (value is Number)
            height += Number(value);
        else
            height += ascent;
        
        // Distance from baseline to baseline.  Can be +/- number or 
        // or +/- percent (in form "120%") or "undefined".  
        if (effectiveHeightInLines > 1)
        {
            var value:Object = getStyle("lineHeight");     
            var lineHeight:Number =
                RichEditableText.getNumberOrPercentOf(value, getStyle("fontSize"));
            
            // Default is 120%
            if (isNaN(lineHeight))
                lineHeight = getStyle("fontSize") * 1.2;
            
            height += (effectiveHeightInLines - 1) * lineHeight;
        }            
        
        // Add in descent of last line.
        height += descent;              
        
        return height;
    }

    Внимательно следим за жизненным циклом переменной lineHeight.

    wvxvw, 07 Апреля 2014

    Комментарии (17)