- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
function doSomething(){
static firstTime = true;
if (firstTime){
//Этот код исполнится только при первом обращении к функции
}
//Этот код будет выполнятся при каждом обращении к функции
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+157
function doSomething(){
static firstTime = true;
if (firstTime){
//Этот код исполнится только при первом обращении к функции
}
//Этот код будет выполнятся при каждом обращении к функции
}
Пример взят из книги (дословно)...
−97.5
//-------------------РИСОВАНИЕ и МАТЕМАТИКА--------------------------------
//Рендерить сцену
_root.onEnterFrame = render;
//Функция отрисовки текущего положения
function render()
{
if (enable_anim) //Рисовать только ЕСЛИ разрешена анимация, т.е. файл загружен
{
empty.clear(); //Очистка области для рисования
for (obj in arr_m) //Пройтись по всем элементам кинематической схемы
{
switch(arr_m[obj].type){
case "crank": /*type="0" l="50" angle="0" s0="2" s1="1"*/
//Кривошип
//trace(arr_m[obj].type);
//trace(arr_m[obj].num + " " + arr_m[obj].angle);
empty["arr_o"+arr_m[obj].s1]._x = empty["arr_o"+arr_m[obj].s0]._x +arr_m[obj].l*Math.cos(arr_m[obj].angle*k);
empty["arr_o"+arr_m[obj].s1]._y = empty["arr_o"+arr_m[obj].s0]._y +arr_m[obj].l*Math.sin(arr_m[obj].angle*k);
if (enable_dv) //------------------------Движение звена разрешено-------
{
arr_m[obj].angle += 0.3;
if (arr_m[obj].angle >= 360)
{
arr_m[obj].angle = 0;
}
}
//Невидимка
if(arr_m[obj].hidden) continue;
empty.lineStyle(2,0x404040); empty.moveTo(empty["arr_o"+arr_m[obj].s0]._x,empty["arr_o"+arr_m[obj].s0]._y);
empty.lineTo(empty["arr_o"+arr_m[obj].s1]._x,empty["arr_o"+arr_m[obj].s1]._y);
break;
case "1": /*type="1" l1="100" l2="100" s0="2" s1="3" s2="4"*/
//шатун + коромысло
//trace(arr_m[obj].type);
var x0 = empty["arr_o"+arr_m[obj].s0]._x;
var y0 = empty["arr_o"+arr_m[obj].s0]._y;
var x1 = empty["arr_o"+arr_m[obj].s1]._x;
var y1 = empty["arr_o"+arr_m[obj].s1]._y;
var r = distance(x0, y0, x1, y1);
var a0 = Math.acos((Math.pow(arr_m[obj].l1,2) + Math.pow(r,2) - Math.pow(arr_m[obj].l2,2))/(2*arr_m[obj].l1*r));
var a1 = get_angle(x0, y0, x1, y1);
var x2 = x0 + arr_m[obj].l1 * Math.cos(a1 - a0);
var y2 = y0 + arr_m[obj].l1 * Math.sin(a1 - a0);
//trace(a1/k);
empty["arr_o"+arr_m[obj].s2]._x = x2;
empty["arr_o"+arr_m[obj].s2]._y = y2;
//Невидимка
if(arr_m[obj].hidden) continue;
empty.lineStyle(2,0x404040);
empty.moveTo(x0,y0);
empty.lineTo(x2,y2);
empty.lineTo(x1,y1);
break;
//... Тут еще очень много таких кейсов
}
}
}
Давненько писал на симулятор механический, это функция апдейта всех элементов.
Что в остальном коде, догадаться несложно.
+156
$a2="$a1"; $b2="$b1"; $c2="$c1"; $d2="$d1";
$file=fopen("news.inc.php", "a+");
fputs($file, "news($a2,\"$b2\",\"$c2\",\"$d2\");\n");
fflush($file);
fclose($file);
Спертый пару лет назад скрипт добавления новостей. База хранится в виде кучи функций news()...
+58.1
switch (_Event)
{
case LEVEL_EVENT_Stomp:
if (_Param1 == 53)
{
Level_BeginThread(0, 500);
}
break;
}
switch (_Event)
{
case LEVEL_EVENT_Stomp:
if (_Param1 == 54)
{
Level_BeginThread(1, 500);
}
break;
}
switch (_Event)
{
case LEVEL_EVENT_Stomp:
if (_Param1 == 57)
{
Level_BeginThread(2, 500);
}
break;
}
switch (_Event)
{
case LEVEL_EVENT_Stomp:
if (_Param1 == 58)
{
Level_BeginThread(3, 500);
}
break;
}
switch (_Event)
{
case LEVEL_EVENT_Stomp:
if (_Param1 == 58)
{
Level_BeginThread(3, 500);
}
break;
}
switch (_Event)
{
case LEVEL_EVENT_Stomp:
if (_Param1 == 59)
{
Level_BeginThread(4, 500);
}
break;
}
Кусочек скрипта уровня одной игрушки. Вот что значит, если дизайнер не знает языка... Копипаст форева!!!АдинАдинАдин
+139
public void Recalculate(List<DateTime> weekDates,List<HistoricalRateOccurence> historicalRates) {
UnitsTotal = MonUnits + TuesUnits + WedsUnits + ThursUnits + FriUnits + SatUnits + SunUnits;
if (historicalRates.Count == 0) {
PayAmount = UnitsTotal*PayRate;
}else {
for (int i = 0; i < weekDates.Count; i++) {
switch (i) {
case 0:
PayAmount += MonUnits*GetPayRateForDay(PayRate, weekDates[i], historicalRates);
break;
case 1:
PayAmount += TuesUnits * GetPayRateForDay(PayRate, weekDates[i], historicalRates);
break;
case 2:
PayAmount += WedsUnits * GetPayRateForDay(PayRate, weekDates[i], historicalRates);
break;
case 3:
PayAmount += ThursUnits * GetPayRateForDay(PayRate, weekDates[i], historicalRates);
break;
case 4:
PayAmount += FriUnits * GetPayRateForDay(PayRate, weekDates[i], historicalRates);
break;
}
}
}
ChargeAmount = UnitsTotal * AmsBillRate;
}
Никогда не доверяй циклу!
+136.2
var ids = form.Keys;
if(ids.Length == 0 || ids.Length > 1) { throw Exception;}
кидать исключение если ids.Length !=1
+150.9
$date = mktime(0,0,0, date("m",time()), date("d",time()), date("Y",time()));
+151
@filemtime($cache_f) < time()-(600+((integer)rand(-100,100)))
плавающий кеш? о_О
+157.2
if(preg_match("/\.[gjpi][ipnc][fgo]/i", $_SERVER['REQUEST_URI'])) exit;
−100.4
{% if not has_previous %}
<a class="prev" style="visibility:hidden" href=?page={{ previous }} title="">prev</a>
{% else %}
<a class="prev" href=?page={{ previous }} title="">prev</a>
{% endif %}
Django template. Написал один знакомый.