Remcconen Geplaatst: 14 augustus 2008 Rapport Geplaatst: 14 augustus 2008 (bewerkt) Ik ben bezig met een TDM GM en nu wil ik dat er een team score komt. Bij elke kill wordt er 1 bij op ge telt en bij elke death wordt er 1 af getrokken. Hoe maak je dat?(heb ik nu) En dan wil ik ook als het kan dat de score links boven in de hoek staat.(rechts onder.. ook goed) Ik heb nog geen idee hoe ik dit moet maken. Nu nog met 4 teams en dat als Team 1 kill en Team 2 dood gaat dat er dan niks met de score van Team 3 en 4 moet gebeuren. Hoe? Bewerkt: 15 augustus 2008 door Remcconen Reageren
Sandra Geplaatst: 14 augustus 2008 Rapport Geplaatst: 14 augustus 2008 (bewerkt) Ik heb dat een keer gemaakt voor een gamemode die we gebruikten voor een wedstrijd tussen de (destijds) 3 corporations: Ik heb het nu even veranderd naar 2 teams en als je wilt, kan je meer toevoegen //Bovenaan je script: new ScoreTeam1, ScoreTeam2; new Text:TextdrawTeam1, Text:TextdrawTeam2; new StringTeam1[32], StringTeam2[32]; //OnGameModeInit: format(StringTeam1, sizeof(StringTeam1), " "); format(StringTeam2, sizeof(StringTeam2), " "); TextdrawTeam1= TextDrawCreate(620, 387, StringTeam1); TextdrawTeam2= TextDrawCreate(620, 413, StringTeam2); TextDrawAlignment(TextdrawTeam1, 3); TextDrawAlignment(TextdrawTeam2, 3); TextDrawLetterSize(TextdrawTeam1, 0.50, 1.20); TextDrawLetterSize(TextdrawTeam2, 0.50, 1.20); TextDrawColor(TextdrawTeam1, 0x3b91c3AA); //Lichtblauwe tekstkleur TextDrawColor(TextdrawTeam2, 0xFFFF66AA); //Lichtgele tekstkleur SetTimer("UpdateTextdraw", 1000, 1); //OnPlayerDeath: Let op: als je geen 'gTeam' gebruikt, verander de 'gTeam' die ik hieronder gebruik naar je eigen variabelen! if(gTeam(playerid) == TEAM1) { ScoreTeam1--; ScoreTeam2++; } else if(gTeam(playerid) == TEAM2) { ScoreTeam1++; ScoreTeam2--; }; En ergens onderaan je script: forward UpdateTextdraw(); public UpdateTextdraw() { format(StringTeam2, sizeof(StringTeam2), "Scores: ~n~Team 1: %d", ScoreTeam1); format(StringTeam2, sizeof(StringTeam2), "Team 2: %d", ScoreTeam2); TextDrawHideForAll(TextdrawTeam1); TextDrawHideForAll(TextdrawTeam2); TextDrawSetString(TextdrawTeam1, StringTeam1); TextDrawSetString(TextdrawTeam2, StringTeam2); TextDrawShowForAll(TextdrawTeam1); TextDrawShowForAll(TextdrawTeam2); }; Dit was het. Ohja, de textdraw staat nu wel rechts-onderin de hoek in plaat van links bovenin. Om dit te veranderen moet je de coordinaten bij de TextdrawCreate-regels veranderen Succes ermee =>Sandra<= Edit: Zo ziet het er dan ongeveer uit: Bewerkt: 14 augustus 2008 door =>Sandra<= Reageren
Remcconen Geplaatst: 14 augustus 2008 Auteur Rapport Geplaatst: 14 augustus 2008 (bewerkt) Bedankt, hier kan ik wel wat mee. Maar als ik nu 4 teams wil en Team1 killt er 1 van Team2 dan meot er bij Team3 en Team 4 niks gebeuren. Hoe maak ik dat? Ook nog ene paar errors er bij: (Regel 11 bij mij stukje op Plaatcode.be) TDM.pwn(206) : error 012: invalid function call, not a valid address TDM.pwn(206) : warning 215: expression has no effect TDM.pwn(206) : error 001: expected token: ";", but found ")" TDM.pwn(206) : error 029: invalid expression, assumed zero TDM.pwn(206) : fatal error 107: too many error messages on one line OnPlayerDeath (Mijn script het de errors) EDIT: Mijn eerste post ook even aangepast. Bewerkt: 15 augustus 2008 door Remcconen Reageren
Remcconen Geplaatst: 21 augustus 2008 Auteur Rapport Geplaatst: 21 augustus 2008 Ik heb nog 1 vraag. Hoe kom jij een die co-ordinaten op het beeldscherm? De plek wara de tekst dus komt? Reageren
Sandra Geplaatst: 24 augustus 2008 Rapport Geplaatst: 24 augustus 2008 Je gebruikt de verkeerde haakjes (Bij de playerid): if(gTeam(playerid) == TEAM_GROVE) moet zijn: if(gTeam[playerid] == TEAM_GROVE) \ Verander dit ook bij regel 18, 25 en 32. Over je laatste vraag: Het scherm is verdeeld in 640x480 coordinaten (ongeacht de resolutie waarop je speelt). 0x0 is linksbovenin. 0x480 is linksonderin 640x0 is rechtsbovenin 640x480 is rechtsonderin Reageren
Remcconen Geplaatst: 25 augustus 2008 Auteur Rapport Geplaatst: 25 augustus 2008 Je gebruikt de verkeerde haakjes (Bij de playerid): if(gTeam(playerid) == TEAM_GROVE) moet zijn: if(gTeam[playerid] == TEAM_GROVE) \ Verander dit ook bij regel 18, 25 en 32. Over je laatste vraag: Het scherm is verdeeld in 640x480 coordinaten (ongeacht de resolutie waarop je speelt). 0x0 is linksbovenin. 0x480 is linksonderin 640x0 is rechtsbovenin 640x480 is rechtsonderin Bedankt, nu kan ik eindeljik meer errors oplossen. Door die fatal error zocht hij niet verder en kom ik dus geen errors zien. Nogmaals Dank Reageren
Recommended Posts
Een reactie plaatsen
Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.