Página 1 de 2

[SA] Graffiti in anywhere WIP

Enviado: 18 Nov 2019, 18:11
por Ruben Viera
Anteriormente chamado Grove Street Graffiti in anywhere

O mod originalmente foi feito para poder fazer o graffiti da grove street em qualquer lugar, alem disso adiciona 1 estrela de perseguição caso algum pedestre estiver próximo a você.

Atuamente o mod posibilita fazer os graffitis de tudas as bandas do jogo.

Pontos fortes
  • Não bugueia os tags originais do jogo.
  • Adicionado até 9 tags sem sustituir (necessário Open Limit Adjusted).
  • Arquivo .ini configuravel (caso usar algum outro mod que adicione objetos pode cambiar o id dos tags)
  • Não fica parte do graffiti voando.
Pontos ruims
Até o momento
  • Precisa estar bem perto da parede para fazer o graffiti.
  • Caso a superficie foi pequena o graffiti pode ficar com uma parte voando (voi corregir no futuro). Corrigido.
Como usar:
É somente usar o spray can (lata de pintura spray) perto de alguma parede, para cambiar os tags é somente pressionar G e os numeros do 1 até o 9.


Algumas imagens
SpoilerAbrir
Imagem
Imagem
As seguintes são imagens antigas da beta 0.3
ImagemImagem


Source
SpoilerAbrir

Código: Selecionar tudo

SCRIPT_START
{
NOP
//cleo have a 32 variable
LVAR_INT scplayer, aux, gun, veh, model
LVAR_FLOAT cords[8]                        //0=X, 1=Y, Z= 2, 3=X2...etc
LVAR_FLOAT Z ,angle, aux2
LVAR_INT tag[9]                            //to save the number of the tags
GET_PLAYER_CHAR 0 scplayer
READ_INT_FROM_INI_FILE "Graffiti.ini" "MAIN" "tag_1" tag[0]
READ_INT_FROM_INI_FILE "Graffiti.ini" "MAIN" "tag_2" tag[1]
READ_INT_FROM_INI_FILE "Graffiti.ini" "MAIN" "tag_3" tag[2]
READ_INT_FROM_INI_FILE "Graffiti.ini" "MAIN" "tag_4" tag[3]
READ_INT_FROM_INI_FILE "Graffiti.ini" "MAIN" "tag_5" tag[4]
READ_INT_FROM_INI_FILE "Graffiti.ini" "MAIN" "tag_6" tag[5]
READ_INT_FROM_INI_FILE "Graffiti.ini" "MAIN" "tag_7" tag[6]
READ_INT_FROM_INI_FILE "Graffiti.ini" "MAIN" "tag_8" tag[7]
READ_INT_FROM_INI_FILE "Graffiti.ini" "MAIN" "tag_9" tag[8]
model = tag[0]
//Created by Angelomon
main_loop:
WAIT 0
    IF IS_KEY_PRESSED VK_KEY_G              //to go to the tag change system
        GOTO cheats
        one_label:
    ENDIF
    
    IF IS_KEY_PRESSED VK_RBUTTON
    AND IS_KEY_PRESSED VK_LBUTTON
        GET_CURRENT_CHAR_WEAPON scplayer gun
        IF gun = 41
        and IS_CHAR_ON_FOOT scplayer
            GET_CHAR_COORDINATES scplayer cords[0] cords[1] Z
            GET_CHAR_HEADING scplayer angle
            WRITE_DEBUG_WITH_FLOAT "X: " cords[0]
            WRITE_DEBUG_WITH_FLOAT "Y: " cords[1]
            WRITE_DEBUG_WITH_FLOAT "Z: " Z
            WRITE_DEBUG_WITH_FLOAT "angle" angle
            cords[2] = cords[0]
            cords[3] = cords[1]
            
            IF  angle >  135.0          //south
            and angle <  225.0
                angle = 180.0
                cords[3] = cords[1] -  1.0
                cords[4] = cords[0] + 1.0
                cords[5] = cords[3]
                cords[6] = cords[0] - 1.0
                cords[7] = cords[5]
                GOSUB spawn
            ENDIF
            IF  angle >  0.0            //north
            and angle <  45.0
                angle = 0.1
                cords[3] = cords[1] +  1.0
                cords[4] = cords[0] + 1.0
                cords[5] = cords[3]
                cords[6] = cords[0] - 1.0
                cords[7] = cords[5]
                GOSUB spawn
            ENDIF
            IF  angle > 315.0           //another north
            and angle < 360.0
                angle = 0.1
                cords[3] = cords[1] + 1.0
                cords[4] = cords[0] + 1.0   
                cords[5] = cords[3]         
                cords[6] = cords[0] - 1.0   
                cords[7] = cords[5]
                GOTO spawn
            ENDIF
            IF  angle > 45.0            //west
            and angle < 135.0
                angle = 90.0
                cords[2] = cords[0] - 1.0
                cords[4] = cords[2]
                cords[5] = cords[1] + 1.0
                cords[6] = cords[4]
                cords[7] = cords[1] - 1.0
                GOTO spawn
            ELSE
                IF  angle > 225.0       //east
                and angle < 315.0
                    angle = 270.0
                    cords[2] = cords[0] + 1.0
                    cords[4] = cords[2]
                    cords[5] = cords[1] + 1.0
                    cords[6] = cords[4]
                    cords[7] = cords[1] - 1.0
                    GOTO spawn
                ENDIF
            ENDIF
            label1:
        ENDIF
    ENDIF
GOTO main_loop
spawn:
    IF IS_LINE_OF_SIGHT_CLEAR cords[0] cords[1] Z cords[2] cords[3] Z 1 1 1 1 1   //X Y Z X2 Y2 Z   1st verification
        WRITE_DEBUG "there is nothing"
    ELSE
        IF IS_LINE_OF_SIGHT_CLEAR cords[0] cords[1] Z cords[4] cords[5] Z 1 1 1 1 1   //2nd verification
            WRITE_DEBUG "2nd verification failed"
        ELSE
            IF IS_LINE_OF_SIGHT_CLEAR cords[0] cords[1] Z cords[6] cords[7] Z 1 1 1 1 1  //3rd verification
                WRITE_DEBUG "3rd verification failed"
            ELSE
                WRITE_DEBUG "there is something"
                IF ARE_ANY_CHARS_NEAR_CHAR scplayer 5.0     //if a ped is near you catch 1 star
                    ALTER_WANTED_LEVEL 0 1
                    wait 0
                ELSE
                    IF GET_RANDOM_CAR_IN_SPHERE_NO_SAVE_RECURSIVE cords[0] cords[1] Z 3.0 0 0 veh
                        WRITE_DEBUG "there is a car near"
                    ELSE
                        REQUEST_MODEL model  //1528  
                        WHILE NOT HAS_MODEL_LOADED model 
                            WAIT 0
                        ENDWHILE
                        Z = Z - 0.8
                        GOSUB direction
                        CREATE_OBJECT model cords[2] cords[3] Z aux
                        WRITE_DEBUG_WITH_FLOAT "X2" cords[2]
                        WRITE_DEBUG_WITH_FLOAT "Y2" cords[3]
                        aux2 = angle + 90.0
                        SET_OBJECT_ROTATION aux 0.0 0.0 aux2
                        WHILE IS_CHAR_PLAYING_ANIM scplayer "SPRAYCAN_FIRE"
                            wait 0
                        ENDWHILE
                    ENDIF
                ENDIF
            ENDIF   //3rt verification
        ENDIF       //2nd verification
    ENDIF           //1st verification
    goto label1
RETURN
direction:
//this part is for set the coordinates for the graffiti
    IF  angle >  135.0          //south
    and angle <  225.0
        angle = 180.0
        cords[3] = cords[1] -  0.8  //Y2 = Y
        
        return
    ENDIF
    IF  angle >  0.0            //north
    and angle <  45.0
        angle = 0.1
        cords[3] = cords[1] +  0.8
        
        return   
    ENDIF
    IF  angle > 315.0           //another north
    and angle < 360.0
        angle = 0.1
        cords[3] = cords[1] + 0.8
        
        return
    ENDIF
    IF  angle > 45.0            //west
    and angle < 135.0
        angle = 90.0
        //stop
        cords[2] = cords[0] -  0.8
        return
    ELSE
        IF  angle > 225.0       //east
        and angle < 315.0
            angle = 270.0
            cords[2] = cords[0] + 0.8
            return
        ENDIF
    ENDIF
return
cheats:
    IF IS_KEY_PRESSED VK_KEY_1 
    or IS_KEY_PRESSED VK_NUMPAD1
        model = tag[0]
        PRINT_HELP_STRING "Graffiti change to tag 1"
        wait 2000
    ENDIF
    IF IS_KEY_PRESSED VK_KEY_2 
    or IS_KEY_PRESSED VK_NUMPAD2
        model = tag[1]
        PRINT_HELP_STRING "Graffiti change to tag 2"
        wait 2000
    ENDIF
    IF IS_KEY_PRESSED VK_KEY_3 
    or IS_KEY_PRESSED VK_NUMPAD3
        model = tag[2]
        PRINT_HELP_STRING "Graffiti change to tag 3"
        wait 2000
    ENDIF
    IF IS_KEY_PRESSED VK_KEY_4 
    or IS_KEY_PRESSED VK_NUMPAD4
        model = tag[3]
        PRINT_HELP_STRING "Graffiti change to tag 4"
        wait 2000
    ENDIF
    IF IS_KEY_PRESSED VK_KEY_5 
    or IS_KEY_PRESSED VK_NUMPAD5
        model = tag[4]
        PRINT_HELP_STRING "Graffiti change to tag 5"
        wait 2000
    ENDIF
    IF IS_KEY_PRESSED VK_KEY_6 
    or IS_KEY_PRESSED VK_NUMPAD6
        model = tag[5]
        PRINT_HELP_STRING "Graffiti change to tag 6"
        wait 2000
    ENDIF
    IF IS_KEY_PRESSED VK_KEY_7 
    or IS_KEY_PRESSED VK_NUMPAD7
        model = tag[6]
        PRINT_HELP_STRING "Graffiti change to tag 7"
        wait 2000
    ENDIF
    IF IS_KEY_PRESSED VK_KEY_8
    or IS_KEY_PRESSED VK_NUMPAD8
        model = tag[7]
        PRINT_HELP_STRING "Graffiti change to tag 8"
        wait 2000
    ENDIF
    IF IS_KEY_PRESSED VK_KEY_9
    or IS_KEY_PRESSED VK_NUMPAD9
        model = tag[8]
        PRINT_HELP_STRING "Graffiti change to tag 9"
        wait 2000
    ENDIF
GOTO one_label
return
}
SCRIPT_END

Download beta 0.6 (pra quem quiser testar)
Graffiti in anywhere

Creditos:
Texturas: Usei as texturas do dopienoise, do mod Remastered Vanilla Graffiti HQ.
Arquivos .DFF, .COl, .IDE: Ruben Viera / Angelomon

PD: tardei em atualizar pois o Coll editor tava bug

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 18 Nov 2019, 20:06
por Neon
Aqui funcionou de boa até;
Imagem
Foda que em algumas partes os grafites ficam voando por causa da superfície
Imagem
Única coisa que eu achei ruim foi que tu tem que mirar pra aparecer a pintura, se tu só apertar o botão de atirar ele n funfa, além de que depois de adicionar tipo 3 grafites meu jogo crashou, deve ser por conta dos limites do jogo. De resto seria legal ter mais variações ao invés de só o graffiti padrão da grove, bom mod.

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 18 Nov 2019, 20:26
por L34ND20
eu tinha dito q não bugava a missão de Tag como o antigo mod, mas ta bugando sim. Cada tag criado aumenta  o total a ser realizado, até mesmo na Estatística. (Não sei se é apenas o número ou atrapalha a conclusão da missão) , mas qndo faz longe do tag rival não acontece isso. O certo é não fazer as 100 pichações com o mod instalado, q nem o mod original. PS: Eu troquei a textura para o graffiti original em hd.
Imagem Imagem

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 18 Nov 2019, 20:37
por L34ND20
tipo assim...
Imagem
Só q no caso o seu não foi criado nessa imagem, pq as vezes ele aparece mto rápido ou demora a ser criado. E o número vai aumentando aleatóriamente igual o antigo mod. E parece q ta crashando tbm...

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 18 Nov 2019, 22:09
por L34ND20
Na missão Marcando a Area, não é possivel continuar, vc faz os dois primeiros depois do Sweet, e não libera pra ir pro carro, como se o primeiro (2) não tivesse sido feito. 
Imagem

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 18 Nov 2019, 22:47
por L34ND20
Neon escreveu:
18 Nov 2019, 20:06
Única coisa que eu achei ruim foi que tu tem que mirar pra aparecer a pintura, se tu só apertar o botão de atirar ele n funfa
Interessante, essa é a solução pra não bugar a missão do Tag, na hora de fazer em cima aperta só o botão esquerdo, pronto!

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 19 Nov 2019, 09:53
por L34ND20
Escolher as cores da pichação: Preto, Branco , Verde escuro ou claro?

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 19 Nov 2019, 12:04
por Junior_Djjr
Não se deve criar novas pichações usando o modelo de pichação do jogo, você está adicionando mais pichações funcionais no mapa.
O certo é usar um modelo adicional.

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 20 Nov 2019, 14:02
por L34ND20
É um pouco demorado de fazer, mas é satisfatório, pus o 'tag vanilla hd' atropelando os ballas B) Então eu percebi q o jogo crasha conforme clicka bastante com o botão esquerdo do mouse, mesmo q não apareça o tag, já aconteceu algumas vezes...
Imagem

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 21 Nov 2019, 07:53
por Junior_Djjr
Olhando nesta imagem, agora que percebi, qual o sentido da Grove ter grafitado do lado dos Ballas em vez de por cima deles? Eles preservaram o espaço onde está escrito o Ballas, é totalmente sem sentido, essa preservação de espaço só acontece como educação para que o grafiti da outra pessoa não seja estragado, por que a Grove quis preservar?

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 21 Nov 2019, 11:43
por GTA_GamerZ
Junior_Djjr escreveu:
21 Nov 2019, 07:53
Olhando nesta imagem, agora que percebi, qual o sentido da Grove ter grafitado do lado dos Ballas em vez de por cima deles? Eles preservaram o espaço onde está escrito o Ballas, é totalmente sem sentido, essa preservação de espaço só acontece como educação para que o grafiti da outra pessoa não seja estragado, por que a Grove quis preservar?
Yes this is strange and that open a way to GTA San Andreas 2. How did Cesar knew about Ryder and CJ betrayal? Why did GSF member kept the ballas member graffiti on this wall? The next in GTA SA 2 with CJ son.

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 21 Nov 2019, 11:59
por nadalao
Junior_Djjr escreveu:
21 Nov 2019, 07:53
Olhando nesta imagem, agora que percebi, qual o sentido da Grove ter grafitado do lado dos Ballas em vez de por cima deles? Eles preservaram o espaço onde está escrito o Ballas, é totalmente sem sentido, essa preservação de espaço só acontece como educação para que o grafiti da outra pessoa não seja estragado, por que a Grove quis preservar?

não da pra saber qual pixou primeiro mas é estranho mesmo.

esses dias eu estava pensando nos ballas, na visão de um vilão ele pode se considerar um heroi, não conhecemos os líderes dos ballas nem seus objetivos, quem sabe se o jogo se passasse na perspectiva de um balla os membros da grove que seriam os vilões. deve ter um motivo foda pros caras chegarem atirando na casa dos jhonson (esqueci tudo que acontece no San Andreas Introduction).
imagine pensar na origem dessas gangues e sua rivalidade, eu penso que é por domínio de território pra poder vender drogas, mas isso parece não se encaixar na grove, por qual motivo a grove buscaria por expandir seu território se ela é contra as drogas? não entendo o que norteia a grove. gangues almejam poder, o poder deles envolve ter muito dinheiro e bem sabemos que o que financia as gangues é dinheiro de tráfico, se não for o tráfico, o que sustenta a gangue? só broderagem? acho que não. além disso, porque um almejante a gangster se filiaria a grove? certamente esse cara escolheria uma gangue com maior poder, escolheria uma gangue que lhe dê dinheiro/poder.

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 22 Nov 2019, 19:37
por L34ND20
Tem  uma coisa mto GRAVE q acontece com esse mod ele perde o SAVE qndo vc vai carregar o jogo salvo começa um novo JOGO, isso acontece apenas se vc usar o spray  sem mesmo salvar em cima.

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 22 Nov 2019, 20:00
por L34ND20
Junior_Djjr escreveu:
21 Nov 2019, 07:53
Olhando nesta imagem, agora que percebi, qual o sentido da Grove ter grafitado do lado dos Ballas em vez de por cima deles? Eles preservaram o espaço onde está escrito o Ballas, é totalmente sem sentido, essa preservação de espaço só acontece como educação para que o grafiti da outra pessoa não seja estragado, por que a Grove quis preservar?
E qndo os ballas explodem o carro do big smoke sendo q a tampa de combustível fica do outro lado. 
Imagem

Re: [SA] Grove Street Graffiti in anywhere WIP

Enviado: 22 Nov 2019, 22:32
por Junior_Djjr
Leandro MixModGTAini escreveu:
22 Nov 2019, 19:37
Tem uma coisa mto GRAVE q acontece com esse mod ele perde o SAVE qndo vc vai carregar o jogo salvo começa um novo JOGO, isso acontece apenas se vc usar o spray sem mesmo salvar em cima.
Também, porque o jogo confunde a quantidade de pichções no mapa que mudou.