Подсчёт очков
|
|
Ma4eteGT
| Дата: Понедельник, 03/08/2009, 00:02 | Сообщение # 1 |
Сержант
Регистрация: 20/01/2009 |
Клан: | [Flyer] |
Страна: | |
Статус: | |
| И наконец последнее, что мне нужно (не буду вас дальше мучить ). Надо сделать такк чтобы после каждого взятого пикапа, суммировалось количество хп и ап всех кто взял его и выводилось на экран. неважно, в строчку внизу, или в менюшку сбоку. количество очков сосчитаное после первого пикапа, должно складываться с очками после второго пикапа и т.д, до пятого
Сообщение отредактировал Ma4eteGT - Понедельник, 03/08/2009, 00:03 |
|
| |
OKStyle
| Дата: Понедельник, 03/08/2009, 18:00 | Сообщение # 2 |
Analgésico
Регистрация: 17/01/2009 |
Клан: | [ACF] |
Статус: | |
| В начало: В OnPlayerPickUpPickup: Code new Float:hp; GetPlayerHealth(playerid,hp); ScorePU = ScorePU+hp; Ну а как вывести это значение на экран, думаю догадаешься =)
|
|
| |
|
OKStyle
| Дата: Вторник, 04/08/2009, 01:51 | Сообщение # 4 |
Analgésico
Регистрация: 17/01/2009 |
Клан: | [ACF] |
Статус: | |
| В начало: В OnGameModeInit: Code new string[256]; format(string,sizeof(string),"%s",ScorePU); ScoreBar = TextDrawCreate(549.000000,72.000000,string); TextDrawAlignment(ScoreBar,1); TextDrawBackgroundColor(ScoreBar,0x00ff00ff); TextDrawFont(ScoreBar,3); TextDrawLetterSize(ScoreBar,0.569999,2.549999); TextDrawColor(ScoreBar,0x00ff0033); TextDrawSetOutline(ScoreBar,1); TextDrawSetProportional(ScoreBar,1); TextDrawSetShadow(ScoreBar,1); TextDrawShowForAll(ScoreBar); В OnPlayerUpdate: Code new string[256]; format(string,sizeof(string),"%s",ScorePU); TextDrawSetString(ScoreBar,string); Примерно так...
|
|
| |
Ma4eteGT
| Дата: Вторник, 04/08/2009, 02:08 | Сообщение # 5 |
Сержант
Регистрация: 20/01/2009 |
Клан: | [Flyer] |
Страна: | |
Статус: | |
| OnPlayerUpdate у меня нет, я праильно созал? Code public OnPlayerUpdate(playerid) { new string[256]; format(string,sizeof(string),"%s",ScorePU); TextDrawSetString(ScoreBar,string); return 1; }
Сообщение отредактировал Ma4eteGT - Вторник, 04/08/2009, 20:35 |
|
| |
|
Ma4eteGT
| Дата: Вторник, 04/08/2009, 20:37 | Сообщение # 7 |
Сержант
Регистрация: 20/01/2009 |
Клан: | [Flyer] |
Страна: | |
Статус: | |
| В общем всё уладилось, скомпилилось, но когда меняю мод, сервак крашит.
Сообщение отредактировал Ma4eteGT - Вторник, 04/08/2009, 20:49 |
|
| |
|
Ma4eteGT
| Дата: Четверг, 06/08/2009, 01:20 | Сообщение # 9 |
Сержант
Регистрация: 20/01/2009 |
Клан: | [Flyer] |
Страна: | |
Статус: | |
| Походу с текстдравами мой сервак не обучен работать . Тогда может сделать по другому с помощью геймтекста? Внизу надпись Scores: 0000. После входа в пикап надпись изменяется (общее количество хп+ап тех кто вошёл в него. После входа игроков в следущий пикап цифры изменяются опять (сумма прошлых очков и заработанных на этом пикапе) и т.д.
Сообщение отредактировал Ma4eteGT - Четверг, 06/08/2009, 01:20 |
|
| |
|
Ma4eteGT
| Дата: Понедельник, 10/08/2009, 01:04 | Сообщение # 11 |
Сержант
Регистрация: 20/01/2009 |
Клан: | [Flyer] |
Страна: | |
Статус: | |
| В общем, я посоветовался с одним человеком и вот полностью работоспособный код: В начало: Code new Float:ScorePU; new Text:ScoreBar; В OnGameModeInit: Code ScoreBar = TextDrawCreate(5,433," "); TextDrawAlignment(ScoreBar,1); TextDrawBackgroundColor(ScoreBar,0x00ff00ff); TextDrawFont(ScoreBar,3); TextDrawColor(ScoreBar,0x00ff0033); TextDrawSetOutline(ScoreBar,1); TextDrawSetShadow(ScoreBar,1); TextDrawColor(ScoreBar,0xffffffff); В OnPlayerPickUpPickup: Code new Float:hp; new Float:am; GetPlayerHealth(playerid,hp); GetPlayerArmour(playerid,am); ScorePU = ScorePU+hp+am; Upgrade(); В конец мода: Code forward Upgrade(); Upgrade() { new string[256]; TextDrawHideForAll(ScoreBar); format(string,256,"Score: %d",floatround(ScorePU)); TextDrawSetString(ScoreBar,string); TextDrawShowForAll(ScoreBar); }
|
|
| |