01:29
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 1
  • 1
Модератор форума: Alcoholik  
[FS] Яблочный сад
Valik_TimoshenkoДата: Четверг, 12.07.2012, 10:23 | Сообщение # 1
Уверенный в себе
Группа: Продвинутые
Сообщений: 159
Награды: 5
Город: Одесса
Репутация: 238
Замечания: 60%
Статус:


Особенности:
1.Есть 3 дерева, на каждом по 5 яблок.Сорвав одно или другое количество их уменьшается.
2.Всё в 3D текстах.
3.Срывать яблоко по кнопке.
4.Когда игроки сорвут всё яблока, они снова вырастут.
5.Каждое яблоко даёт +10 хп

Не хорошо:
1.Используется один глобальный таймер.Без его я не как не мог обойтись, так как он нужен для обновления количества яблок.
2.Не очень много деревьев.Но это так... можете добавить.
3.Код оптимизирован на уровне моих знаний. (не плохо конечно, но и не супер-оптимизация)
4.Нет сохранения в файл (после рестарта мода яблоки будут становится на дефолт = 5)

Скачать: - http://rghost.ru/38688513
Пастебин: - http://pastebin.com/iNRQBW5p

Автор: Igor_Jackson




http://axesas-project.ru/
Неважно, сколько вас. Важно верить и важно иметь четкий план. Победа - это упорство.
stepmexДата: Четверг, 12.07.2012, 13:57 | Сообщение # 2
Мастер джэдай
Группа: Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус:

  • Code
    new tree[3] = {5, ...}
    Зачем эти понты, у тебя 3 ячейки!
    Code
    new tree[] = {5, 5, 5}

  • Code
    new Float:ApplesPos[3][3] = {{-128.0779,-1156.0182,3.1224},{-125.3354,-1129.2430,2.6993},{-151.4828,-1137.2666,3.2345}};
    Оформляй код красиво:
    Code
    new Float:ApplesPos[][] = {
      {-128.0779,-1156.0182,3.1224},
      {-125.3354,-1129.2430,2.6993},
      {-151.4828,-1137.2666,3.2345}
    };

  • Code
    CreateObject(772,-129.00000000,-1156.50000000,0.30000001,0.00000000,0.00000000,318.00000000);
         CreateObject(772,-152.89999390,-1137.40002441,0.30000001,0.00000000,0.00000000,317.99926758);
         CreateObject(772,-125.90000153,-1128.50000000,0.30000001,0.00000000,0.00000000,317.99926758);
    А в цикле который у тебя далее нельзя это сделать, и координаты не из воздуха взять а относительно тех что в массиве для текстов?
  • Code
    for(new i = 0x0; i != sizeof(ApplesPos); i++)
    Опять же, зачем этот понт?
    Code
    for(new i; i < sizeof(ApplesPos); i++)

  • Code
    if(newkeys & KEY_FIRE)
    Посмотрите в документации как разработчики рекомендуют отслеживать нажатие клавиш. Они кстати там для этого даже макросы написали.
  • Code
    SendClientMessage(playerid,-1, "{00FF00}У вас уже есть яблоко");
    SendClientMessage(playerid,-1, "{FFA500}На этом дереве нет {00FF00}яблок");
    SendClientMessage(playerid,-1, " {FFA500}Вы сорвали яблоко ");
    SendClientMessage(playerid,-1, "{FFA500}У вас нет {00FF00}яблока");
    SendClientMessage(playerid,-1, "{FFA500}Вы скушали яблоко");
    Опять возвращаемся к теме дешевого понта!
    Code
    SendClientMessage(playerid, 0x00ff00ff, "У вас уже есть яблоко");
    SendClientMessage(playerid, 0xFFA500ff, "На этом дереве нет {00FF00}яблок");
    SendClientMessage(playerid, 0xFFA500ff, " Вы сорвали яблоко ");
    SendClientMessage(playerid, 0xFFA500ff, "У вас нет {00FF00}яблока");
    SendClientMessage(playerid, 0xFFA500ff, "Вы скушали яблоко");


По поводу таймера: вполне можно избавиться и от него, запоминай когда последний раз было сорвано яблоко и когда игрок пытается срывать яблоко сперва делай пересчет в соответствии с текушим временем, а уж потом выдавай яблоко или говори что их нет



И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
Valik_TimoshenkoДата: Четверг, 12.07.2012, 15:06 | Сообщение # 3
Уверенный в себе
Группа: Продвинутые
Сообщений: 159
Награды: 5
Город: Одесса
Репутация: 238
Замечания: 60%
Статус:
Зачем ты пишешь это мне? Автор не Я



http://axesas-project.ru/
Неважно, сколько вас. Важно верить и важно иметь четкий план. Победа - это упорство.
stepmexДата: Четверг, 12.07.2012, 16:31 | Сообщение # 4
Мастер джэдай
Группа: Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус:
Quote (Valik_Timoshenko)
Зачем ты пишешь это мне? Автор не Я
Буду я ещё разбираться кто автор.
Товар тоже делают не там где продают, но почему-то со всеми жалобами мы идем туда где их купили.

Так что опубликовал - отвечай, не можешь ответить - не публикуй!

PS раздражает когда всякие умники публикуют чужие скрипты, а вы у автора разрешение на публикацию спрашивали?!



И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
Valik_TimoshenkoДата: Четверг, 12.07.2012, 16:46 | Сообщение # 5
Уверенный в себе
Группа: Продвинутые
Сообщений: 159
Награды: 5
Город: Одесса
Репутация: 238
Замечания: 60%
Статус:
Quote (stepmex)
Quote (Valik_Timoshenko)
Зачем ты пишешь это мне? Автор не Я
Буду я ещё разбираться кто автор.
Товар тоже делают не там где продают, но почему-то со всеми жалобами мы идем туда где их купили.

Так что опубликовал - отвечай, не можешь ответить - не публикуй!

PS раздражает когда всякие умники публикуют чужие скрипты, а вы у автора разрешение на публикацию спрашивали?!


Спрашивали! Если у тебя ПМС, не надо тянуть сюда свою вшивую задницу




http://axesas-project.ru/
Неважно, сколько вас. Важно верить и важно иметь четкий план. Победа - это упорство.
Exclus1veДата: Понедельник, 16.07.2012, 09:34 | Сообщение # 6
Освоившийся
Группа: Продвинутые
Сообщений: 141
Награды: 4
Город: Санкт-Петербург
Репутация: 330
Замечания: 40%
Статус:
stepmex, знал бы ты кто автор - ты бы этого не говорил ( феерический нубила с другого портала ). crazy


node.js

Сообщение отредактировал Exclus1ve - Понедельник, 16.07.2012, 09:36
KämpferДата: Понедельник, 16.07.2012, 09:57 | Сообщение # 7
Освоившийся
Группа: Продвинутые
Сообщений: 114
Награды: 15
Город: /
Репутация: 163
Замечания: 40%
Статус:
омг, какое только гавно сейчас не лепят.. Заачеем эта херня нужна? Лижбы что нибудь выложить.


Гитлер капут

Можно сопротивляться вторжению армий, вторжению идей сопротивляться невозможно. ©

Оплачиваемая личная помощь, исправление и оптимизация кода, написание небольших скриптов.
skype: kampfer_88
Valik_TimoshenkoДата: Понедельник, 16.07.2012, 12:18 | Сообщение # 8
Уверенный в себе
Группа: Продвинутые
Сообщений: 159
Награды: 5
Город: Одесса
Репутация: 238
Замечания: 60%
Статус:
Quote (Kämpfer)
омг, какое только гавно сейчас не лепят.. Заачеем эта херня нужна? Лижбы что нибудь выложить.


[off] Лижбы пост набить? [/off]




http://axesas-project.ru/
Неважно, сколько вас. Важно верить и важно иметь четкий план. Победа - это упорство.


Сообщение отредактировал Valik_Timoshenko - Понедельник, 16.07.2012, 12:18
Matt_TuckДата: Понедельник, 16.07.2012, 13:08 | Сообщение # 9
Местный
Группа: I'm V.I.P.
Сообщений: 710
Награды: 11
Город: Брянск
Репутация: 461
Замечания: 20%
Статус:
Quote (Kämpfer)
омг, какое только гавно сейчас не лепят.. Заачеем эта херня нужна


ну у Igor_Jackson всегда были проблемы с идеями)



Не в возрасте дело,а в культуре общения и уровне интеллектуального развития

Если вам лижут жопу, не обольщайтесь, возможно это для смазки.

Twitter - Follow Me ;)
Подписываемся на мой Паблик
GamesДата: Среда, 18.07.2012, 17:39 | Сообщение # 10
Новенький
Группа: Продвинутые
Сообщений: 8
Награды: 1
Город: Прим. край
Репутация: 147
Замечания: 0%
Статус:
Код оптимизировал я.. А теперь начнём...

Quote (stepmex)
Зачем эти понты, у тебя 3 ячейки!

Понты? Где ты увидел понты? Мне так удобнее.

Quote (stepmex)
Оформляй код красиво:

На вкус и цвет фломастеров нет... Мне нравится мой вариант.

Quote (stepmex)
А в цикле который у тебя далее нельзя это сделать, и координаты не из воздуха взять а относительно тех что в массиве для текстов?

В массиве совершенно другие координаты!
Тем более, я оптимизировал чужой фс (Игоря Джексона), поэтому вдумываться в его логику выбора координат я не стал.

Quote (stepmex)
Опять же, зачем этот понт?

Ой, простите, присваивать значение переменной в цикле - привычка С++ программиста.
Какая разница какой знак я использую в проверке?

Quote (stepmex)
Опять возвращаемся к теме дешевого понта!

О боже.. Мб хватит ко всякой херне прикапываться? Мб еще запретите мне объявление через static и const делать?

Quote (stepmex)
По поводу таймера: вполне можно избавиться и от него, запоминай когда последний раз было сорвано яблоко и когда игрок пытается срывать яблоко сперва делай пересчет в соответствии с текушим временем, а уж потом выдавай яблоко или говори что их нет

Нельзя.. Перед тем как это говорить, нужно понять для чего я его сделал.
Яблоки восстанавливаются каждые 10 сек! При срывании если сделать - будет не так, как было задуманно первоначальным автором.

По поводу вашего поста:
Где понты - так это Ваш пост.
У каждого скриптера свой почерк.. И тыкать лицом на это глупо.

stepmexДата: Среда, 18.07.2012, 18:08 | Сообщение # 11
Мастер джэдай
Группа: Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус:
Quote (Games)
У каждого скриптера свой почерк.. И тыкать лицом на это глупо.
У меня нет почерка, я использую оформление кода предложенное разработчиками, не поверите, C++ и C#.
Странно хоть вы и утверждаете что:
Quote (Games)
привычка С++ программиста
я вот сильно в этом сомневаюсь. Ни чего в вашем коде нет от программиста С++!
Кстати ни один нормальный программист не приравнивает переменную к шестнадцатеричному числу, пускай даже нулевому, при инициализации. Просто "0" куда понятнее и нагляднее.

Так что вы уважаемый просто псевдоскриптер с завышенным ЧСВ, не более.

Добавлено (18.07.2012, 18:08)
---------------------------------------------

Quote (Games)
Какая разница какой знак я использую в проверке?
Специально для вас поясню какая:
Условие i < 20 будет верно при i меньше нуля, 0 и 1..19, а при i больше или равно 20 будет не верно.
А вот условие i != 20 будет верно всегда когда i отлична от 20, так что если ваш ключ примет значение 21 ваш цикл будет выполняться бесконечно.

На аргумент что тут такого быть не может отвечаю сразу: тут нет, а при более сложной логике может, так что прежде чем пиздеть отпираться, стоит думать и слушать более опытных людей.

Так что рекомендую ещё раз перечитать мой пост и вникнуть во все замечания, а не утверждать что "мне так удобнее". Хотите стать настоящим программистом, научитесь воспринимать критику объективно, а до тех пор вы просто школьник с набором знаний в программировании.



И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
GamesДата: Среда, 18.07.2012, 20:20 | Сообщение # 12
Новенький
Группа: Продвинутые
Сообщений: 8
Награды: 1
Город: Прим. край
Репутация: 147
Замечания: 0%
Статус:
Quote (stepmex)
просто псевдоскриптер с завышенным ЧСВ, не более.

Изначально я ничего не писал.
Разговор начали именно Вы, половина из всего сказанного - критика, которая, я считаю, неуместна.

Quote (stepmex)
Так что рекомендую ещё раз перечитать мой пост и вникнуть во все замечания

Не вижу ни одного дельного замечания.
Я соглашусь только насчет 16-ти ричной системы счисления.

Quote (stepmex)
я вот сильно в этом сомневаюсь. Ни чего в вашем коде нет от программиста С++!

Я немного неверно объяснил.. Нужно было указать компилятор и всё объяснить.

От С++ программиста я имел в виду то, что я присвоил значение переменной i в цикле.

При разработке в Visual Studio подобный код при компиляции вызовет варнинг "warning C4700: использована неинициализированная локальная переменная "i" :

Code
int _tmain(int argc, _TCHAR* argv[])
{
  for(int i; i != 10; i++)
  {
   
  }
  system("pause");
  return 0;
}


Разговор на эту тему был давно поднят на sa-mp.com: http://forum.sa-mp.com/showpost.php?p=1732186&postcount=4803

Quote (stepmex)
так что прежде чем пиздеть отпираться, стоит думать и слушать более опытных людей.

Мне кто-то тут еще про ЧСВ говорил? Если честно, не вижу вашего опыта и сейчас я Вам объясню.

->

Quote (stepmex)
На аргумент что тут такого быть не может отвечаю сразу: тут нет, а при более сложной логике может, так что прежде чем пиздеть отпираться, стоит думать и слушать более опытных людей.

Вот именно, тут НЕТ, поэтому я допускаю использование "!=". Если передо мной будет поставлена другая задача - то и решение будет другое.
А теперь я объясню, почему именно "!=".

Проверка "!=" выполняется быстрее, чем "<".

Тест:

Code
// Проверка <
new tick = GetTickCount();
for(new i = 0; i < 10000000; i++)
{
      
}
printf("%d", GetTickCount() - tick);


Code
// Проверка !=
new tick = GetTickCount();
for(new i = 0; i != 10000000; i++)
{
      
}
printf("%d", GetTickCount() - tick);


Output (проверил 3 раза):

Code
Проверка <
[23:13:30] 515
[23:13:31] 482
[23:13:31] 498

Проверка !=
[23:14:02] 176
[23:14:03] 170
[23:14:03] 169


Думаю, теперь Вам понятен мой выбор?

stepmexДата: Четверг, 19.07.2012, 11:57 | Сообщение # 13
Мастер джэдай
Группа: Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус:
Quote (Games)
Проверка "!=" выполняется быстрее, чем "<".
fun
Code
[13:52:47] 140 <
[13:52:47] 134 !=

[13:52:51] 135 <
[13:52:52] 137 !=

[13:52:54] 143 <
[13:52:54] 134 !=

[13:52:57] 133 <
[13:52:57] 144 !=
Компьютер у вас батенька говно, разница в пределах погрешности.



И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
GamesДата: Четверг, 19.07.2012, 15:31 | Сообщение # 14
Новенький
Группа: Продвинутые
Сообщений: 8
Награды: 1
Город: Прим. край
Репутация: 147
Замечания: 0%
Статус:
Quote (stepmex)
Компьютер у вас батенька говно, разница в пределах погрешности.

Ноутбук давно покупал. Да и мы здесь не компьютер мой собрались обсуждать.
Тест "!=" и "<" проводил не только я, поэтому это было подтверждено не только мною.

Провёл тест на хостинге Ru-Hoster. Проверил 10 раз, в каждом из них "!=" был быстрее.

Но опять же, наш спор пошел не в том направлении.
Надеюсь, дело не дойдет до того, что мы начнём подробно разбирать спецификацию Pawn.

  • Страница 1 из 1
  • 1
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua