Jump to content
  • 0

pomoc Teleport - pickup


MatyasRoseckyHZSZZS

Dotaz

Popis problému:

Zdravim. Mám problém když chci udělat pickup co mě teleportuje. Nevím co je za problém - zkoušel jsem několik návodů a nic. No, vše je popsáno níže...

 

Chyby/varování kompilátoru a při běhu:

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(26) : error 029: invalid expression, assumed zero

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(27) : error 001: expected token: ";", but found "{"

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(33) : error 029: invalid expression, assumed zero

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(34) : error 001: expected token: ";", but found "{"

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(40) : error 029: invalid expression, assumed zero

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(41) : error 001: expected token: ";", but found "{"

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(51) : error 029: invalid expression, assumed zero

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(52) : error 001: expected token: ";", but found "{"

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(67) : warning 225: unreachable code

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(67) : error 029: invalid expression, assumed zero

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(68) : error 001: expected token: ";", but found "{"

C:\Users\Rosecka\Documents\Maty\samp 037\pawno\inter.pwn(82) : error 030: compound statement not closed at the end of file (started at line 42)

Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

 

 

11 Errors.

 

Kód:

 

new v1ez;
new v1ep;
new v1iz;
new v1ip;


#include 


public OnFilterScriptInit()
{
v1ez = CreatePickup(1318, 23, 2770.9783, -1628.4524, 12.0000, -1);
v1ep = CreatePickup(1318, 23, 2782.2710, -1646.2864, 11.5000, -1);
v1iz = CreatePickup(1318, 23, 2795.5977, -1588.6517, 901.0000, -1);
v1ip = CreatePickup(1318, 23, 2803.2319, -1572.2581, 901.0000, -1);
return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == v1ez)
{
SetPlayerPos(playerid,2800.9958, -1573.3588, 901.0000);
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == v1ep)
{
SetPlayerPos(playerid,2797.4087, -1586.5310, 901.0000);
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == v1iz)
{
SetPlayerPos(playerid,2771.2925, -1627.3766, 12.0000);
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == v1ip)
{
SetPlayerPos(playerid,2782.2913, -1647.2223, 11.5000);
}





public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == v1ip)
{
SetPlayerPos(playerid,2782.2913, -1647.2223, 11.5000); //nastavi pozici
//------------------------------------------------------------------------------------
}

if(pickupid == v1iz)
{
SetPlayerPos(playerid,2771.2925, -1627.3766, 12.0000); //nastavi pozici
}
return 1;

}

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == v1ep)
{
SetPlayerPos(playerid,2797.4087, -1586.5310, 901.0000); //nastavi pozici
//------------------------------------------------------------------------------------
}

if(pickupid == v1ez)
{
SetPlayerPos(playerid,2800.9958, -1573.3588, 901.0000); //nastavi pozici
}
return 1;

}

 

 

 

Dodatečné poznámky:

--

Link to comment
Share on other sites

Recommended Posts

  • 0

Toto by ti malo fungovať.

 

#include "a_samp"
 
new Pickup[50]; 
 
public OnFilterScriptInit()
{
    Pickup[1] = CreatePickup(1318, 23, 2770.9783, -1628.4524, 12.0000, -1);
    Pickup[2] = CreatePickup(1318, 23, 2782.2710, -1646.2864, 11.5000, -1);
    Pickup[3] = CreatePickup(1318, 23, 2795.5977, -1588.6517, 901.0000, -1);
    Pickup[4] = CreatePickup(1318, 23, 2803.2319, -1572.2581, 901.0000, -1);
    return (true);
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
    if(pickupid == Pickup[1])
    {
        SetPlayerPos(playerid, 2800.9958, -1573.3588, 901.0000);
    }
    if(pickupid == Pickup[2])
    {
        SetPlayerPos(playerid, 2797.4087, -1586.5310, 901.0000);
    }
    if(pickupid == Pickup[3])
    {
        SetPlayerPos(playerid, 2771.2925, -1627.3766, 12.0000);
    }
    if(pickupid == Pickup[4])
    {
        SetPlayerPos(playerid, 2782.2913, -1647.2223, 11.5000);
    }
    return (true);
}

 

 

 

Edited by DeNisKo
Link to comment
Share on other sites

  • 0

Dík. Ale stejně mám problém. V tom "interiéru v oblacích" (vlastní výtvor) kam bych se měl teleportovat, tak se "propadnu" podlahou (vidím jen ten pickup ale ten "interier v oblacích" ne. A taky na zemi - mám tam "bránu" (v editoru) ale ve hře není vidět... Jako když zadám otevírací příkaz, tak mi to nehodí že neexistuje. hra to veme ale nic. Podle mě je to v Pawnu (vše co je v MP závisí na pawnu). Compiler s tim problém nemá. jelikož mi to nepovolí do přílohy hodit .pwn a když dám ikonu code tak mi to píše že příspěvek je dlouhý. tak proto hodím pawno na uloz.to. (https://www.uloz.to/tam/_FIThUF5ASnUx)

Dík 

Link to comment
Share on other sites

  • 0

Diky moc. jdu to zkusit.

 

EDIT:

Jen tam byla chyba na ř. 2 izcmd

opraveno na zcmd. a jdu zkouset

 

EDIT 2 :

Pardon. izcmd je dobre. jen ho nemam stazeny icon_e_smile.gif

 

EDIT 3:

Stejně to nepomohlo - i když dík za pokus s tim něco udělat. Furt se propadávám a furt neni zábrana

Edited by MatyasRoseckyHZSZZS
Link to comment
Share on other sites

  • 0

Nemá špatné souřadnice ... pokud chce hráče portnout do interiéru tak musí změnit interier přes SetPlayerInterior viz. http://wiki.sa-mp.com/wiki/SetPlayerInterior a ID interierů najdeš tady: http://wiki.sa-mp.com/wiki/InteriorIDs

Edited by TeoCZE
Link to comment
Share on other sites

  • 0

Ok, potřebuješ streamer. Můžeš mít pouze 1000 objektů a těch tam máš mnohem více (http://wiki.sa-mp.com/wiki/Limits).

 

Stáhni si tento streamer http://forum.sa-mp.com/showthread.php?t=102865 (je to plugin) a pak přepiš všechny CreateObject na CreateDynamicObject.

Doporučuji nechat plochu, na kterou se teleportuješ, jako CreateObject, protože streamer má delay v načítání objektů.

  • Líbí se mi to! (+1) 1
Link to comment
Share on other sites

  • 0

takže i rozdělit do několika filterscriptů?

 

EDIT:

Nebo tedy:

(✝✝) To circumvent these limits, it is possible to use a streamer

to znamená jakože když tam je streamer tak tam můžu mít klidně milion objektů a nevadí to?

Edited by MatyasRoseckyHZSZZS
Link to comment
Share on other sites

  • 0

Ne. Stáhni si ten plugin, co jsem ti posílal. Obsah nakopíruješ do složky tvého serveru (pawno/include/streamer.inc vložíš tam, odkud načítáš includy, pokud je načítáš odjinud). Do tvého server.cfg zapíšeš

plugins streamer

pokud jsi na linuxu tak s připonou .so.

 

Do fs připíšeš 

#include <streamer>

a změníš CreateObject na CreateDynamicObject

Link to comment
Share on other sites

  • 0
Dík

 

Tak nejdřív to nešlo, pak jsem přihodil pár řádků z jinýho mýho kódu a VŠECHNO funguje. Jenom pár věcí funguje blbě:

 

1) Ta brána tam je 2x... ((jedna se neotevírá) - zkusím odstranit)

 

2) pickup za budovou chybí

 

3) v interiéru mě "přední" vchod hodí za budovu a "zadní" vchod mě "hodí tam kam se portuju zepředu budovy" (v exteriéru mě přední vchod "hodí tam kde se portuju zepředu budovy"

 

 

EDIT: něco jsem s tím zkusil, a brána funguje dobře, ten pickup za budovou furt chybí a teď to je že v interiéru když chci vyjít předním vchodem tak mě to spawne buď za budovu, nebo k zadnímu vstupu (v interiéru.)

A u tý brány budu muset upravit rychlost - ale to je drobnost icon_e_smile.gif

 

EDIT 2: Tak rychlost spravena. A teď Vás poprosím:  Prosím pomozte mi s těma pickup-ama... 


Edited by MatyasRoseckyHZSZZS
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...